Javascript jQuery对象包含什么?
比方说,我有以下代码:Javascript jQuery对象包含什么?,javascript,jquery,Javascript,Jquery,比方说,我有以下代码: <ul> <li><strong>list</strong> item 1 - one strong tag</li> <li><strong>list</strong> item <strong>2</strong> - two <span>strong tags</span></li>
<ul>
<li><strong>list</strong> item 1 -
one strong tag</li>
<li><strong>list</strong> item <strong>2</strong> -
two <span>strong tags</span></li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
<li>list item 6</li>
</ul>
<script>
var x = $("li");
for (var k in x){
alert(k + x[k]);
}
</script>
- 列表项目1-
一个强有力的标签
- 列表项目2-
两个强标签
- 清单项目3
- 清单项目4
- 清单项目5
- 清单项目6
var x=$(“li”);
for(x中的变量k){
警报(k+x[k]);
}
问题是:警报输出的东西太多了!为什么?
为什么它不只输出li元素??锂元素存储在哪里??
如何仅输出jQuery方法通常应用的li元素???它将提醒整个原型链。使用jQuery(javascript)中的每个函数迭代li元素。此外,不建议将for in作为迭代对象的正确选择。jQuery“object”不仅包含DOMnode引用。如果这样循环(
for..in
),将获得直接位于对象上并通过原型链继承的所有属性。您只需使用jQuerys本身的。each()
方法来循环其DOMnode引用:
x.each(function( index, node ) {
console.log('Hi, I am at index ', index, ' and my reference is: ', node);
});
使用
for…in
构造也将迭代所有属性,包括通过原型链继承的所有属性,这就是为什么您会得到对象的所有属性以及匹配的li
元素集
如果对循环使用一个普通的(或者,正如其他人所指出的,jQuery每个
方法),它将工作:
var x = $("li");
for (var k = 0; k < x.length; k++){
alert(k + x[k]);
}
var x=$(“li”);
对于(var k=0;k
jQuery将对象包装在与选择器匹配的DOM元素周围,有关详细信息,请参阅
这些警报的内容是该对象的函数和属性。您可以使用jquery查询每个函数
$("li").each(function(index, el){
..
});
它还输出什么?使用jQuery的每一个,您所做的是显示集合的成员/方法。+1for。。。in
是迭代数组或类似数组的对象的错误方法。