如上所述http://api.jquery.com/live/:
从jQuery 1.7开始,不推荐使用.live()方法.使用.on()附加事件处理程序.
对.而不是
$('.dynamicallyCreatedElement').live('click', function(){
console.log('click');
});
Run Code Online (Sandbox Code Playgroud)
我应该用:
$('.dynamicallyCreatedElement').on('click', function(){
console.log('click');
});
Run Code Online (Sandbox Code Playgroud)
但是,它不会将事件绑定到on()调用后创建的元素.那么它真的更好live()吗?
我错过了什么吗?
Ser*_*eit 63
$(document).on("click", ".dynamicallyCreatedElement", function() {
console.log('click');
});
Run Code Online (Sandbox Code Playgroud)
因此,您将on处理程序绑定到document自身(或实际上,新元素将"出现"的容器元素 - 感谢@ devnull69进行说明),然后将其传递给事件类型和选择器.
您可以在live文档页面的中间找到几个示例.
elc*_*nrs 13
$('#closestStaticParent').on('click', '.dynamicallyCreatedElement' function(){
console.log('click');
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9508 次 |
| 最近记录: |