$('body').on("click", "ul.typeFirst li a.username", function(e)
可以吗?我这样做的原因是因为ul
像上面这样可以多次动态加载。我只是想知道选择整个身体是否可以,或者创建一个div
或其他东西并选择它div
并将元素动态加载到该div中会更好。
$('body').on("click", "ul.typeFirst li a.username", function(e)
可以吗?我这样做的原因是因为ul
像上面这样可以多次动态加载。我只是想知道选择整个身体是否可以,或者创建一个div
或其他东西并选择它div
并将元素动态加载到该div中会更好。
是的,这样做很好(尽管我相信 using$(document)
实际上比 using更快$('body')
)。
但是,如果所有有问题的元素都包含在同一个容器中<div>
,请通过选择它。这<div>
将是首选和最有效的解决方案。
基本上,只要您能够本地化(本地化我的意思是专注于)与您的事件相关的元素的特定部分,您就应该这样做。
了解实际情况很重要。看看这个站点,看看事件是如何遍历 dom 的。http://www.quirksmode.org/js/events_order.html
你正在做一些叫做委派的事情。它比将事件绑定到您真正想要的元素要昂贵得多,因为它必须在每次点击时检查事件目标。它可能适合您使用它的目的,但您要小心使用它。对于鼠标悬停事件之类的事情,您不希望在正文级别上执行此操作。