var length=$('div p').length;
for(var i=0; i<length; i++) {
if(i==5) {
do something
}
}
div をループして最初の (0 インデックス) 要素から開始しようとしています。ループが 5 番目のインデックスに達したら、何かを実行したいと思います。私の質問は、コードは正しいですか、そうでない場合、私のエラーはどこにありますか
var length=$('div p').length;
for(var i=0; i<length; i++) {
if(i==5) {
do something
}
}
div をループして最初の (0 インデックス) 要素から開始しようとしています。ループが 5 番目のインデックスに達したら、何かを実行したいと思います。私の質問は、コードは正しいですか、そうでない場合、私のエラーはどこにありますか
jQuery を使用すると、より簡単に実行できます。
$('div p').each(function(i) {
if (i==5) { do something }
});
関数でthis
は、現在の要素です。このコードを使用して、(コンソールで)それが何であるかを確認できます:
$('div p').each(function(i) {
console.log(this); // prints the paragraph in the console
if (i==5) { do something }
});
6 番目の要素 (インデックスは 0 から始まる) だけで何かをしたい場合は、ループする必要はありません: 単純に実行します
var element = $('div p:eq(5)');
5 番目の要素では、i==4 .. 最初の要素では i==0 であるためです。それはあなたの間違いです
これはあなたが望むものですか: http://jsfiddle.net/67d8k/
$('button').click(function () {
$('div p:lt(5)').clone().appendTo('div');
});