问题说明了一切。哪个更好,什么时候使用什么,我几年来一直没有使用jQuery live(),因为我已经使用liveQuery插件两年了,我已经习惯了并且仍然继续使用它。但是我想知道两者之间的细微差别,以及何时使用它们?

最佳答案

jQuery的“实时”功能利用DOM上事件的冒泡。相比之下,“liveQuery”插件使用选择器在DOM中查找元素并直接附加事件处理程序。

我认为您最好在可能的情况下使用“实时”功能,因为它涉及较少的DOM遍历等。例如,使用liveQuery将事件处理程序挂接到整个大表上可能有点慢,但对于都带有“现场”。尽管jQuery 1.4大大改进了“实时”功能,但有时可能存在某些问题(当然是IE)迫使您使用liveQuery。

编辑— 更新:2017年9月

此时,现代jQuery版本将事件处理程序注册集中在.on() API中。简要地:

$(selector).live("event-name", handler);

今天将用.on()编写:
$(document).on("event-name", selector, handler);

与长期不推荐使用的.on()方法相比,.live() API提供了更大的灵活性,包括可以选择使用DOM中的任何节点作为委派点(就像旧的.delegate()一样)。

09-20 12:55