0

我正在尝试迭代下面的列表:

<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”。任何人都可以解释这一点吗?

4

1 回答 1

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. 
});
于 2012-10-02T01:10:34.573 回答