如何绑定.hover()来动态创建“li”元素?

时间:2013-02-19 05:16:42

标签: jquery

我能找到的所有解决方案都建议使用.live()方法。但截至今天它已被弃用。

.hover()完美适用于未动态创建的“li”元素。但是,一旦我追加新的“li”.hover()根本没有触发。

有人想过这个吗?

3 个答案:

答案 0 :(得分:49)

“hover”事件已被委托事件处理弃用,例如.on() .on()

相反,您需要使用$(document).on("mouseenter", "li", function() { // hover starts code here }); $(document).on("mouseleave", "li", function() { // hover ends code here }); 委托事件处理与mouseenter和mouseleave以及每个事件处理程序。

例如:

li

在您的真实代码中,您将选择一个静态父对象,该对象比document对象更接近动态{{1}}标记,以获得更好的性能。

答案 1 :(得分:0)

使用JQuery On 试试这个:

$(document).on('hover', 'li', function () {

});

答案 2 :(得分:0)

试试这个

编辑:Sry错过了已弃用的活动

$(document).on("mouseenter", "li", function(){
       //Your code
});

http://api.jquery.com/live/

fiddle