alc*_*ion 0 jquery javascript-events
可能的重复:
jQuery 1.7-将live()转换为on()
只需将我的代码从“实时”切换为“开启”,某些事件就不再触发,这是一个示例,有人可以帮忙说一下这是怎么回事吗?以前,使用“实时”而不是“开启”方法可以100%正确地工作。
$('a#doBulkLink').on('click', function (e) {
createLabelsWithDestinationFolders();
$('label.moveDocDestinationFolder').on('click', function (e) {
doSomeAjaxStuffWithLabels();
e.stopImmediatePropagation();
});
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
谢谢。
您不能替换live()与on()改变功能名称简单on(); 签名也会发生变化。
$('selector').live('event', function () {
});
Run Code Online (Sandbox Code Playgroud)
...变成...
$(document).on('event', 'selector', function () {
});
Run Code Online (Sandbox Code Playgroud)
在当前形式下,您所拥有的是直接替代的bind()(click(),change()等是别名)。因此,将处理程序直接绑定到元素,而不是将处理程序绑定到document并利用事件冒泡(这样做是这样live()做的)。