我正在查看旧代码。我看到对于使用 ajax 添加的元素,有很多 livequery 代码。新版本的 jquery 不再需要 livequery 了吗?有谁知道在哪个版本之后不需要它?
$("#somediv").livequery(function(){
$(this).click(function(){
});
});
最佳答案
livequery
是与 .live()
完全不同的概念。
.live()
方法使用事件委托(delegate) 来处理页面上任何位置发生的事件。
livequery
将在发生 DOM 更改时调用处理程序(通过 jQuery 方法)。
对于下面的示例,当将具有 class="some_class"
的元素添加到 DOM(或将类添加到元素)时,第一个处理程序将运行。删除后,第二个。
$('.some_class').livequery( function() {
// apply a plugin to the element
$(this).somePlugin();
}, function() {
// clean up after the element was removed
});
应该很少实际需要 livequery
,但在极少数情况下,您需要响应 DOM 更改,并且无法控制导致的 jQuery这些变化,它可能很有用。
关于javascript - 是否弃用了 livequery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7675526/