-1
var length=$('div p').length;

for(var i=0; i<length; i++) {

if(i==5) {

  do something

}
}

我试图通过一个 div 循环并从第一个(0 索引)元素开始,当循环到达第 5 个索引时,我希望它做一些事情。我的问题是,代码是否正确,如果不正确,我的错误在哪里

4

3 回答 3

1

你可以用 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)');
于 2013-01-08T08:08:41.233 回答
0

在第五个元素上,i==4 .. 因为在第一个元素上 i==0。那是你的错误

于 2013-01-08T08:11:35.910 回答
0

这是你想要的:http: //jsfiddle.net/67d8k/

$('button').click(function () {
  $('div p:lt(5)').clone().appendTo('div');
});
于 2013-01-08T08:35:10.083 回答