在我正在处理的网站上,以下(简化的)代码处理对元素的点击:
var $selectors = $('.selector');
$selectors.click( function( e ) {
// Do stuff
});
它在除 IE 之外的所有浏览器中都能正常工作。(我已经测试过 IE8 和 IE9 并且两者都中断了。)
IE 不会抛出任何错误,但它只是不运行代码(“Do stuff”)。
我发现如果不再缓存选择器,就没有这个问题了。所以这有效:
$('.selector').click( function( e ) {
// Do stuff
});
有任何想法吗?我知道我可以简单地停止缓存,但这是一个简化的用例;实际上,缓存这些 DOM 查找对我很有帮助,总的来说,我只想知道它为什么不起作用。