2

for-inループを使用して、2つの要素の配列を反復処理していますが、これは2回ループするようなものです。

ここに例があります:http://jsbin.com/etoyac/8/

4

1 に答える 1

4

これは、から返される結果がgetElementsByTagName単純な配列ではなく、NodeListであり、「ライブ」であるためです。DOMに加えた更新は、すぐにリストに反映されます。

Arrayプロトタイプの「slice」メソッドを使用して、NodeListを配列に変換できます。

var slideArr = [].slice.call(slides, 0);

また、数値インデックスを使用して配列(またはその場合はNodeList)を反復処理する必要があります。

for (var slideIndex = 0; slideIndex < slideArr.length; ++slideIndex) {
于 2012-07-12T00:06:29.080 に答える