当我需要在函数的范围内多次访问jQuery选择器的结果时,是否建议仅运行一次选择器并将其分配给本地变量?
抱歉我在这里举的例子很陈旧,但我认为它说明了这个问题。那么,这段代码会更快吗:
var execute = function(){
var element = $('.myElement');
element.css('color','green');
element.attr('title','My Element');
element.click(function(){
console.log('clicked');
});
}
比这段代码更好:var execute = function(){
$('.myElement').css('color','green');
$('.myElement').attr('title','My Element');
$('.myElement').click(function(){
console.log('clicked');
});
}
如果没有区别,那么有人能解释一下为什么吗?jQuery会在选择元素后缓存它们,因此后续的选择器就不必再次搜索dom吗?