根据我的理解,livequery用于在DOM更改后维护您的事件。
最新版本的jquery不支持这个吗?
答案 0 :(得分:7)
是的,它仍然有用。 live()
仅适用于某些事件,而livequery()
可以绑定到用户浏览器提供的任何事件。
http://docs.jquery.com/Events/live
可能的事件值:
click, dblclick, mousedown, mouseup, mousemove, mouseover, mouseout, keydown, keypress, keyup
目前不支持:
blur, focus, mouseenter, mouseleave, change, submit
请注意,不受支持的还有touchstart, touchend
等触摸事件
答案 1 :(得分:2)
livequery()
提供的一个有用功能live()
不能在每次匹配新元素时触发自定义函数(和/或元素不再匹配)。< / p>
来自docs:
Live Query也有能力 当它发出一个函数(回调) 匹配一个新元素和另一个元素 函数(回调)的时候 元素不再匹配。这个 提供最大的灵活性和 无数的用例。比如说 以下代码使用基于函数 Live Query实现jQuery 悬停辅助方法并在删除时删除它 元素不再匹配。
$('li')
.livequery(function(){
// use the helper function hover to bind a mouseover and mouseout event
$(this)
.hover(function() {
$(this).addClass('hover');
}, function() {
$(this).removeClass('hover');
});
}, function() {
// unbind the mouseover and mouseout events
$(this)
.unbind('mouseover')
.unbind('mouseout');
});