Выберите самый маленький элемент с JQuery - PullRequest
0 голосов
/ 15 мая 2010

Полагаю, вопрос в заголовке: я хочу применять стиль только к элементу с наименьшим наведением, когда пользователь щелкает. Как мне выбрать именно этот элемент?

Спасибо.

1 Ответ

1 голос
/ 15 мая 2010

Чтобы наложить стиль на div и не повлиять на родителя, вы можете остановить пузырь с помощью event.stopPropagation(), например:

$("div").click(function(e) {
  $(this).toggleClass("myClass");
  e.stopPropagation();
});

Демонстрацию этой работы можно посмотреть здесь

Для случая hover вы бы на самом деле хотели бы mouseover и mouseout вместо mouseenter и mouseleave (с которыми .hover() связывается) в этом случае, вот так :

$("div").mouseover(function(e) {
  $(this).addClass("myClass").parents().removeClass("myClass");
  e.stopPropagation();
}).mouseout(function() {
  $(this).removeClass("myClass");
});​

Вы можете увидеть это в действии здесь

...