将字符串“选择器”传递给 jQuery 函数后:
$('#onenode')
返回一个 jQuery 对象的数组。
这些对象的方法之一是“html”,这就是为什么:
$('#onenode').html('hello!');
作品。
然而...
这:
$('.somenodes')
返回一个jQuery对象数组,这个数组中的每个对象都有方法“html”。
那么如何:
$('.somenodes').html('hello');
工作?“html”方法必须是返回的 Array Object 的方法。
因此,我假设 Array 对象的“html”方法与此类似:
html: function(value) {
for(var i=0; i<this.length; i+=1) {
this[i].html(value);
}
}
这些都是假设,我几乎是在猜测。
我正在尝试创建自己的使用“选择器”的小型库,但我正在努力解决这部分问题。我知道这可能是不正确的——有人可以解释一下 jQuery 是如何做到的吗?