Показать сообщение отдельно
  #1 (permalink)  
Старый 10.10.2012, 22:34
Аспирант
Отправить личное сообщение для RodgerFox Посмотреть профиль Найти все сообщения от RodgerFox
 
Регистрация: 10.10.2012
Сообщений: 47

Добавление класса другому элементу.
Добрый вечер, уважаемые пользователи форума.
Подскажите пожалуйста, что я делаю не так, а точнее как улучшить такой код.
Не тролите код, это мой первая работа на js (да мб лучше использовать хайд)
$(document).ready(function(){
  $('li.touchcarousel-item h2').hover(function() { $('div.more-inf').addClass('more-inf-active');}, 
					function() {$('div.more-inf').removeClass('more-inf-active');
  });
});

Есть структура блоков:
<li><h2 /><div class="more-inf" /></li>

По дефолту див спрятан, при наведении на заголовок h2 диву добавляется класс который открывает див. Но таких элементов списка <li> у меня несколько, и при наведении в каждом моргает внутернний див которому добавляется класс. Подскажите как этого можно избежать?
Так же есть свойство для more-inf:hover {display: block;} что бы не пропадало.
Надеюсь на вашу поддержку, большое спасибо.

Разобрался, сделал такую конструкцию:
$('li.touchcarousel-item>h2').hover(function() {$(this).siblings('div.more-inf').addClass('more-inf-active');},
        function() {$(this).siblings('div.more-inf').removeClass('more-inf-active');});

Последний раз редактировалось RodgerFox, 11.10.2012 в 13:25.
Ответить с цитированием