目前我有350+事件,如所有事件代表團到文檔
$(document).on('click','.removable-init',function(){});
林看到一個性能問題,一些點擊事件是由幾分之一秒的延遲。 但我的整個網站是動態生成的Ajax。
我想知道如何處理這些問題。
例如我的網站的流量讓我們看下面。
ONLOAD
<html>
<head></head>
<body>
<div id="main">
<button id="clickme"></button>
<button id="clickme2"></button>
</div>
</body>
</html>
點擊:#clickme
$('#main').append('<div id="anothermain"><button id="anotherclick"></button></div>');
點擊:#clickme2
$('#main').append('<div id="anothermain4"><button id="anotherclick4"></button></div>');
點擊:#anotherclick
$('#anothermain').append('<div id="anothermain2"><button id="anotherclick2"></button></div>');
點擊:#anotherclick2
$('#main').append('<div id="mainsibling"><button id="clicksibling"></button></div>');
點擊:#anotherclick4
$('#main').append('<div id="anothermain5"><button id="anotherclick2"></button></div>');
以上僅僅是一個例子,表明點擊EV ents是巨大的(350+),並且動態創建在網站的不同部分。
所以我想知道如何處理這些問題,而不使用委託文件。 ?
有時專注於文本框,下拉列表中單擊等時,有很多在屏幕上的元素
一種方法是儘可能地接近對象:'$(「#main」)。on('click','button',function(){});' – mplungjan
可以包含所有元素的最接近的東西是'#main',它是document/body的子元素,所以我不認爲它會影響很多 –