【发布时间】:2012-05-13 01:32:59
【问题描述】:
这里的人们经常建议缓存从DOM 元素创建的jQuery 对象,就像下面的代码:
$('#container input').each(function() {
$(this).addClass('fooClass');
$(this).attr('data-bar', "bar");
$(this).css('background-color', 'red');
});
- 缓存 jQuery 对象真的能提高我们代码的性能吗?
- 当您将 DOM 元素传递给 jQuery 构造函数时,“幕后”会发生什么?
【问题讨论】:
-
你应该总是缓存,但在这个特定的例子中,你甚至不需要这样做。只需利用 jQuery 链接:
$(this).addClass('fooClass').attr('data-bar', "bar").css('background-color', 'red');
标签: javascript jquery performance