ID
は一意であり、何度も再利用することはできません。変更id="hiddencontent"
してからclass="hiddencontent"
、以下に従ってください。
デモjsFiddle
$(document).ready(function() {
var index = 0;
$('#show').click(function () {
$('div').eq(index).fadeIn('slow');
if(index < $('div').length){
index++;
}else{
alert('There is no more hidden content!');
}
});
$('#remove').click(function(){
$('div').eq(index -1).remove();
});
});
jQuery.eq()
にはzero based index
. クリック関数の外部で変数を設定しますが、クリックのスコープでは引き続き使用でき、hiddencontent を順番に切り替えます。クリックすると、インデックスが変更0 > 1 > 2 > 3
されます。インデックスがクラスに一致する要素の現在の数よりも小さいかどうかを確認し、hiddencontent
パスした場合は、インデックスを次の整数に反復します。
remove 関数は、最後にインデックス付けされたアイテムを削除するだけなので、反復子を変更する必要はありません (シナリオに基づいてわかる限り)。
これで十分です。