这是我的代码:
$myDiv = $('<div>1</div>');
$myDiv.each(function () {
console.log(this.html());
});它会产生一个错误,因为this应该是$(this)。但是等等。$myDiv首先不是一个jQuery对象,所以this也必须是一个jQuery对象。如果是这样,为什么要在$( )中包装this
发布于 2011-09-02 00:42:46
jQuery对象或多或少是一个常规DOM元素的数组。each对这些进行迭代。this只是一个DOM元素,而$(this)生成一个由DOM元素组成的单元素数组,可以访问jQuery应用编程接口函数。
发布于 2011-09-02 00:42:43
在这种情况下,this实际上指的是节点。
$myDiv = $('<div>1</div>');
$myDiv.each(function () {
console.log(this.innerHTML);
});
// outputs 1发布于 2011-09-02 00:43:52
基本上,当$()成为jQuery添加其助手方法的数组的一部分时获取的任何内容,.each()方法实际上都会迭代数组中的每个元素。也就是说,只有元素而不是jQuery数组拥有所有好的帮助器方法。
https://stackoverflow.com/questions/7273498
复制相似问题