cHa*_*Hao 2 jquery events live
当我使用jQuery将事件附加到元素时,我通常这样做:
$(document).ready(function() {
$('#some_id').click(function() {
// Do some stuff
});
});
Run Code Online (Sandbox Code Playgroud)
但是,我已经看到了许多这样的例子:
$('#some_id').live('click', function() {
// Do some stuff
});
Run Code Online (Sandbox Code Playgroud)
(几乎总是没有ready包装.)
如果元素已经在页面中并且不在任何地方,那么这种方式或其他方式是否存在缺陷?
有许多缺点.live(),因此我限制其使用时间:
.live()通过附加事件处理程序document,并检查是否event.target匹配给定的选择器.这导致:
#some_id.stopPropagation()活动,因为它已经到了根(虽然你仍然可以preventDefault()).#some_id.click().bind()return falsestopPropagation().live().triggerHandler()对元素.| 归档时间: |
|
| 查看次数: |
221 次 |
| 最近记录: |