在Jquery中添加On()事件而不是live()事件

时间:2013-02-16 09:35:52

标签: jquery asp.net

我现在有点困惑,在我改为Jquery 1.9.1之前,我使用live()事件将事件绑定到document.ready上的按钮,但现在我被迫改变{{1} } .live()事件,我的按钮停止工作。所以我以前的代码看起来像:

.on()

之后:

$(document).ready(function () {
    $("#button").live('click', buttonEvent);
});

我错过了什么?

2 个答案:

答案 0 :(得分:2)

$(document).ready(function () {
     $(document).on('click', '#button', buttonEvent); 
});

jQuery .on()可用于委托元素上的事件。它的模式有点不同但更好。

答案 1 :(得分:1)

您可以在此页Live to On

上看到所需的更改

取自该页面,其中显示了语法更改:

1 $("a.offsite").live("click", function(){ alert("Goodbye!"); }); // jQuery 1.3+
2 $(document).delegate("a.offsite", "click", function(){ alert("Goodbye!"); }); // jQuery 1.4.3+
3 $(document).on("click", "a.offsite", function(){ alert("Goodbye!"); }); // jQuery 1.7+