正しいフィドルリンクで更新
次の例があります: http://jsfiddle.net/gespinha/kRUym/52/
配列の要素をクリックするたびに、配列内の位置と次の要素の位置がコンソールに記録されます。私がやろうとしているのは、最後の要素をクリックしたときに、次の要素が実際には最初の要素であることを識別したいということです(配列をループします)。
しかし、最後の要素をクリックすると、arrayPos 変数 (配列内の位置の数: 記事) が 0 に設定されません (配列内の最初の位置、たとえ私がif 引数で、配列の長さよりも大きい場合はゼロになる必要があると述べています。
なぜこうなった?助言がありますか?
HTML
<div class="item">index 0</div>
<div class="item">index 1</div>
<div class="item">index 2</div>
<div class="item">index 3</div>
<div class="item">index 4</div>
<div class="item">index 5</div>
Jクエリ
var articles = [];
$('.item').each(function(){
var obj = $(this);
articles.push(obj);
});
for (var i = 0; i < articles.length; i++) {
$(articles[i]).data("index", i)
}
$('.item').on("click", function() {
var id = $(this).data("index");
console.log('NOW: '+id);
if(id < articles.length){
id++
} else {
id = 0;
}
console.log('NEXT: '+id);
});
どうすればこれを機能させることができますか?