jquery 的each 函数中参数i自动增加时,初始值是0还是1

jimx1002 2011-10-09 11:25:49
function refresh_num(){
$(".area1 .box").each(function(i){
$(this).find("div.box_num").text(i);
});
$(".area2 .box").each(function(i){
$(this).find("div.box_num").text(i);
});
}

当refresh_num函数执行时,area1里的i是从0开始的,而area2里的i是从1开始的,不知道为什么会这样.
求解.
...全文
606 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
光曰不日 2011-10-11
  • 打赏
  • 举报
回复
楼主的头像和我们的心情是一样的啊。。。。
jimx1002 2011-10-11
  • 打赏
  • 举报
回复
嗯,谢谢大家. 是我搞错了,有一个隐藏的div没留意到.
峭沙 2011-10-10
  • 打赏
  • 举报
回复
不可能的事情。。你哪里搞错了吧
_懒猫 2011-10-10
  • 打赏
  • 举报
回复
jquery的each 函数中参数i称为Key(键),是自动增加的,初始值是0
具体问题贴html
hack_pan 2011-10-10
  • 打赏
  • 举报
回复
口答:jquery的each 函数中参数i称为Key(键),是自动增加的,初始值是0,标识当前元素的顺序,类似for(var i=0;i<elements.length;i++);
风一样的大叔 2011-10-10
  • 打赏
  • 举报
回复
贴代码哇
Crazywa 2011-10-10
  • 打赏
  • 举报
回复

<script>
Array.prototype.each = function(fn){
for(var i=0,j=this.length;i<j;i++)
fn.call(this[i],i);
}
var MyArr = ['a','b','c','d'];

MyArr.each(function(i){
document.write("我是第 "+i+" 个,值是 "+this+"<br>");
});
</script>

程序是不会骗人的,所以,是你用的不对吧。
汉尼拔 2011-10-10
  • 打赏
  • 举报
回复
都是从0开始的

如果1开始,说明你眼花了
光曰不日 2011-10-09
  • 打赏
  • 举报
回复
html贴出来看看

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧