Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.06.2010, 11:06
Аспирант
Отправить личное сообщение для Юрий Шу Посмотреть профиль Найти все сообщения от Юрий Шу
 
Регистрация: 27.05.2010
Сообщений: 42

Поиск родителя по селектору
Здравствуйте.
Хочу сделать элементарный скрипт, который при наведении на ссылку добавляет родителю td определенный класс. Подскажите, как это делается?

Пока что выбираю как tdarent, но как фиксировать над какой именно ссылкой навели курсор и как определять ее родителя td непонятно.
<table>
    <tr>
      <td><a href="#">Вячеслав Быков: "Мы были заложниками нашего контракта"</a></td>
    </tr>
    <tr>
      <td><a href="#">Еще один арбитр наказан за свистки в пользу "Локомотива"</a></td>
    </tr>
  </table>

$(document).ready(function(){
	$("table tr td a").mouseover(function(){
		$("td:parent").addClass("gray");
	});
Ответить с цитированием
  #2 (permalink)  
Старый 01.06.2010, 12:12
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Сообщение от Юрий Шу Посмотреть сообщение
$(document).ready(function(){
	$("table tr td a").mouseover(function(){
		$("td:parent").addClass("gray");
	});
$(document).ready(function(){
    $("table tr td a").mouseover(function(){
        $(this).closest("td").addClass("gray");
    });
);
Ответить с цитированием
  #3 (permalink)  
Старый 01.06.2010, 13:09
Аспирант
Отправить личное сообщение для Юрий Шу Посмотреть профиль Найти все сообщения от Юрий Шу
 
Регистрация: 27.05.2010
Сообщений: 42

Нашел другое решение. Вот так не лучше?
$("table tr td a").mouseover(function(){
		$(this).parent("td").addClass("gray")
});
Ответить с цитированием
  #4 (permalink)  
Старый 01.06.2010, 13:35
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Юрий Шу, я уже отписал. closest именно для поиска ближайшего parenta, удовлетворяющего условию (в кои-то веки в jquery реализовали действительно полезный метод). parent -- вернет непосредственного родителя, а это совсем не то.
Ответить с цитированием
  #5 (permalink)  
Старый 01.06.2010, 13:47
Аспирант
Отправить личное сообщение для Юрий Шу Посмотреть профиль Найти все сообщения от Юрий Шу
 
Регистрация: 27.05.2010
Сообщений: 42

Сообщение от e1f Посмотреть сообщение
parent -- вернет непосредственного родителя, а это совсем не то.
имеется ввиду ближайшего родителя?
Ответить с цитированием
  #6 (permalink)  
Старый 01.06.2010, 14:09
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Юрий Шу, да -- parentNode. $().parents("query") вернет ВСЕХ родителей, отфильтрованных по query. Причем если у Вас это td, то вполне возможно, их будет несколько -- вложенные таблицы такие вложенные таблицы. В данном случае нам нужен "ближайший родитель либо сам же елемент, удовлетворяющий выборке".
Ответить с цитированием
  #7 (permalink)  
Старый 01.06.2010, 15:04
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,576

тут у него <td> - как раз непосредственный родитель так что $(this).parent("td") вполне катит, даже так: $(this).parent()
Ответить с цитированием
  #8 (permalink)  
Старый 01.06.2010, 16:06
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

micscr, плохой подход. Profit jQuery - в возможность реализовать шаблоно-независимый компонент. А если ссылка потом будет во что-то обернута? $(this).parent() -- вообще никуда не годится. тогда уж $(this.parentNode).addClass, к чему уж мелочиться
Ответить с цитированием
  #9 (permalink)  
Старый 01.06.2010, 16:08
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

К слову, по-моему в данном случае лучше использовать css, а не js
Ответить с цитированием
  #10 (permalink)  
Старый 01.06.2010, 16:13
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Sweet, согласен, если есть возможность, так и нужно делать. А здесь каким образом можно использовать css?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск слова в исходном коде html страницы klsorat2010 Ваши сайты и скрипты 1 20.05.2010 23:46
Поиск определённых слов в контенте Yellow79 Элементы интерфейса 5 14.05.2010 20:37
Поиск последнего слова в строке AlexFadeev Элементы интерфейса 3 01.04.2010 18:56
Для чего ограничен поиск? ZoNT Сайт Javascript.ru 4 01.10.2008 15:55
Поиск в массиве через JavaScript Noran Общие вопросы Javascript 0 10.08.2008 17:31