当我使用'DOMSubtreeModified'时,我会触发多个,有时30多个事件。是否有可能确保仅在最后一次触发DOMSubtreeModified时调用我的函数?
答案 0 :(得分:5)
凯文B提到的油门的实施:
function throttle( fn, time ) {
var t = 0;
return function() {
var args = arguments,
ctx = this;
clearTimeout(t);
t = setTimeout( function() {
fn.apply( ctx, args );
}, time );
};
}
document.addEventListener("DOMSubtreeModified", throttle( function() {
//code
}, 50 ), false );
如果可能的话,让你的代码独立于DOM变异事件,因为它们比eval和组合
更邪恶