我正在尝试迭代下面的列表:
<ul>
<li class="tab">Tab 1</li>
<li class="tab">Tab 2</li>
<li class="tab">Tab 3</li>
</ul>
使用以下MooTools脚本:
$$('ul').getElements().each(function(el,i) {
alert(i);
});
我只看到屏幕上出现“0”,因为我期待“0”,“1”,“2”。任何人都能解释一下吗?
答案 0 :(得分:2)
$$('ul')
会返回ul
个元素的列表。如果您随后在该列表上调用getElements
,则需要指定标记名称。这会为您提供li
元素列表的列表:[[li, li, li]]
因此,如果要迭代li
元素,可以执行以下操作:
$$('ul').getElements('li')[0].each(function (el, i) { alert(i); });
或:
$$('ul li').each(function(li, index){
// faster.
});