为什么要抓取 <body> 在点击事件期间? 使用 .on() 而不是 .click()



为什么第二个代码比第一个代码好?为什么不直接抓取.vote a,而不是抓取body标签?我正在使用AJAX/JSON/PHP创建一个投票系统:

$('.vote a').click(function() {});
$('body').on('click','.vote a',function(){});

第二个例子是一个委托事件处理程序。它将click事件附加到主体,以便它可以应用于任何.vote a元素,这些元素在页面加载后附加到DOM。

如果有很多元素需要附加相同的事件处理程序,那么即使在DOMReady之后没有附加元素,使用委托模型也可能会提高性能。

这种做法被称为event-delegation。当为运行时(动态)创建的元素绑定事件时,这将非常有用。

最新更新