Я хотел бы иметь как зависание, так и удаление события наведения. Узлы, которые имеют это событие, добавляются динамически, поэтому я хочу использовать on(). При добавлении события зависания он отлично работает (список #second ниже). По какой-то причине, когда я добавляю событие off hover, даже событие добавления hover не будет работать (# первый список ниже).Удалить наведите указатель мыши на()
Просьба указать любые ключи. Живой пример расположен в http://jsfiddle.net/NV7hR/
Благодарности
$(document).ready(function() {
$("#first").on("hover", "a", function(event) {
$(this).parent().css("background-color", "yellow");
}, function(event) {
$(this).parent().css("background-color", "");
});
$("#second").on("hover", "a", function(event) {
$(this).parent().css("background-color", "yellow");
});
});
<body>
<ul id="first">
<li><a href="#"/>Link</a></li>
<li><a href="#"/>Link</a></li>
<li><a href="#"/>Link</a></li>
</ul>
<ul id="second">
<li><a href="#"/>Link</a></li>
<li><a href="#"/>Link</a></li>
<li><a href="#"/>Link</a></li>
</ul>
</body>
'.hover' является сокращенной формой событий' mouseenter' и 'mouseleave'. Наведение как таковое не является событием. И .on («hover» .. не является допустимым синтаксисом. –
http://api.jquery.com/hover/ это все ... RTFM! – Niko
@Niko Вы не можете использовать зависание с .on(). user1032531 хочет использовать .on(), они должны разбить его на mouseenter и mouseleave. Альтернативно, вы можете использовать .hover() напрямую. –