js简单问题、轮播代码没搞懂

html、div#d1>img*3css、#d1{position:relative;overflow:hidden}js、window.onload=function(... html、div#d1>img*3
css、#d1{position:relative;overflow:hidden}

js、window.onload = function(){
function dom(obj){
return document.getElementsByTagName(obj);
};

var pos = 0,
img = dom("img");
len = img.length;

//这段代码没弄懂求解↓
setInterval(function(){
img[pos].style.display = 'none';
pos = ++pos == len? 0 : pos;
img[pos].style.display = 'inline';
},1000)

}
展开
 我来答
Dy_Darker
2016-09-29 · 超过24用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:56.2万
展开全部
setInterval(function(){
img[pos].style.display = 'none';//设置索引为0的图片(就是第一张)样式为dislay:none;
pos = ++pos == len? 0 : pos;//如果索引值 == 你所添加图片的数量就把索引值设置为0,如果不等于就把自加后的索引值 赋给pos;
img[pos].style.display = 'inline';//设置相对应索引值的图片样式为dislay:inline; },1000)每隔一秒执行一次,一直循环
百度网友bed337e
2016-09-29 · TA获得超过657个赞
知道小有建树答主
回答量:644
采纳率:83%
帮助的人:437万
展开全部
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式,也就是说你的几张图片会每搁1秒显示一张,其他的图片隐藏。
img[pos].style.display = 'none';//隐藏第pos张图片
pos = ++pos == len? 0 : pos;//判断pos值,pos值先加1,然后跟图片数组的长度相比,如果pos值等于数组长度,也就是图片数组循环显示了一遍,然后从数组第一张图片再次循环显示。
img[pos].style.display = 'inline';//显示图片
追问
谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2016-09-29
展开全部
  1. 隔1秒轮询执行启动函数

  2. img是个对象数组,,pos为索引值。执行下表为0的img隐藏

  3. 索引从0开始+1      if索引值== 总长度值  索引重新从0开始

  4. 讲索引+1后的img图片显示出来

有问题,请追问,希望能理解,,谢谢

追问
谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式