问题是这样的:我有多个div层,每个div层有若干张图片,我想实现图片自动播放,但是用了setInterval()和onmouseover(),onmouseout()等函数,却发现:
1每次鼠标要先移动到图片上,再离开图片,图片才会自动播放,而不是我一进入网页就自动播放每个div层的图片
2每次最多有一个div层中的图片会自动播放图片,其余的不会自动播放图片。
下面是我的代码
html onmouseover如何对多个div层中的图片自动播放
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- Go 旅城通票 2015-04-16 01:21关注
你进页面的时候又没有执行播放,只有触发时间了才播放。你的计时器是公用的,改为私有的
<script type="text/javascript"> function play_pic(object) { var curIndex = 0; var timeInterval = 1000; var arr = new Array(); arr[0] = "1.jpg"; arr[1] = "2.jpg"; arr[2] = "3.jpg"; arr[3] = "4.jpg"; arr[4] = "5.jpg"; object.picTimer = setInterval(function () { var obj = object; if (curIndex == arr.length - 1) { curIndex = 0; } else { curIndex += 1; } obj.src = arr[curIndex]; }, timeInterval); } function stop_pic(object) { clearInterval(object.picTimer); } window.onload = function () { for (var i = 1; i < 4; i++) play_pic(document.getElementById('obj' + i)); } </script> </head> <body> <div id="div_1"> <img id="obj1" src="1.jpg" onmouseout="play_pic(this)" onmouseover="stop_pic(this)" /> </div> <div id="div_2"> <img id="obj2" src="2.jpg" onmouseout="play_pic(this)" onmouseover="stop_pic(this)" /> </div> <div id="div_3"> <img id="obj3" src="3.jpg" onmouseout="play_pic(this)" onmouseover="stop_pic(this)" /> </div>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 shape_predictor_68_face_landmarks.dat
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制