以下按预期工作:
$(".foo").first().text("hi!")
Run Code Online (Sandbox Code Playgroud)
...因为first()
返回一个jQuery对象.
但是,如果我想使用text()
所有匹配的方法,我需要做:
$(".foo").each( function(idx, obj) {
$(obj).text("hi!")
}
)
Run Code Online (Sandbox Code Playgroud)
...因为each()
给你DOM对象.
这种莫名其妙的差异背后的设计原因是什么?我怎样才能避免为每个匹配构建一个jQuery对象?
Kal*_*see 12
可能是由于与循环大型集合相关的性能原因?如果您只需要DOM对象,则可以节省周期.如果你需要jQuery对象,那么你可以很容易地得到它.
我通常不为每个提供第二个参数,所以我可以使用$(this).
归档时间: |
|
查看次数: |
3276 次 |
最近记录: |