让我明确一下,这行代码现在可以工作。我只是觉得它写得很愚蠢。你知道写这个的更简洁的方法:
$('#'+this.wrapper.id+' .nub').foo();
我通过 jspref.com 运行了答案,结果如下:http: //jsperf.com/jquery-selector-context-test
看起来.find
是赢家。至少镀铬。
让我明确一下,这行代码现在可以工作。我只是觉得它写得很愚蠢。你知道写这个的更简洁的方法:
$('#'+this.wrapper.id+' .nub').foo();
我通过 jspref.com 运行了答案,结果如下:http: //jsperf.com/jquery-selector-context-test
看起来.find
是赢家。至少镀铬。
$('.nub', this.wrapper).foo();
您可以this.wrapper
用作选择器的上下文。
$('.nub', this.wrapper).foo();
或者
$(this.wrapper).find('.nub').foo();
实际上并没有那么糟糕。如果你愿意,你可以将选择器字符串放入它自己的变量中,不过:
var selectorString = "#" + this.wrapper.id + " .nub";
$(selectorString).foo();
$(this.wrapper).find('.nub').bar();