【发布时间】:2012-09-29 15:07:09
【问题描述】:
我有一个相对较大的 DOM,并且在触发元素上的事件时注意到 chrome 中令人难以置信的性能下降。单个事件例如:
myElem.trigger('myevent.myscope',arguments);
需要 14 毫秒!! (22.0.1229.92 米)
firefox 15.0.1 和 msie 9 中的相同事件触发时间不到 1 毫秒!
该元素是一个 jquery 对象并已被缓存,因此在触发之前不会进行 DOM 查找。我正在使用 console.time()
console.time('trigger');
myElem.trigger('myevent.myscope',arguments);
console.timeEnd('trigger');
有人能解释一下这种情况吗
谢谢
加里
【问题讨论】:
-
你能发布你的事件监听器代码吗?
-
@Derek 事件被触发,但并不总是有事件监听器。事件的触发发生在小部件内,例如
loaded.mywidget有时有事件监听器,有时没有。可以绑定在主体上,也可以直接绑定在具有小部件的元素上。 -
当没有要测试的代码时,检查性能有点困难......祝你好运!
标签: jquery performance google-chrome dom