鱼C论坛

 找回密码
 立即注册
查看: 4256|回复: 7

自动轮播图

[复制链接]
发表于 2019-6-20 17:50:52 | 显示全部楼层 |阅读模式
3鱼币
下面这段代码可以自动播放图片(网上下载的,我没看懂),
鼠标放在图片上停止轮播,移开鼠标继续播放,
js部分的流程是怎样的,请大侠画出js流程,谢谢

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
#banner{
height: 280px;
width: 320px;
position: relative;
background: red;
margin: 0 auto;
}
#btn{
position: absolute;
margin:50px 50px;
}
a:hover{
background: #CCCCCC;
}
</style>
</head>
<body>
<div id="banner">
<img id="imgs" src="img/moive1.png" style="height: 280px; width: 320px;"/>
<div id="btn">
<a href="LDY01.jpg"></a>
<a href="LDY02.jpg"></a>
<a href="LDY03.jpg"></a>
<a href="LDY04.jpg"></a>
<a href="LDY05.jpg"></a>
<a href="LDY06.jpg"></a>
</div>
</div>
<script>
function showPic(elements){
var oA = elements.getAttribute("href");
var  oImgs = document.getElementById("imgs");
oImgs.setAttribute("src",oA);}

var aA = document.getElementById("btn").children;
for (var i=0;i<aA.length;i++) {
aA[i].onclick=function(){
showPic(this);
return false;
}
}
var L = ["LDY01.jpg","LDY02.jpg","LDY03.jpg","LDY04.jpg","LDY05.jpg","LDY06.jpg"];
function moveStar(){
clearInterval(times)
var times = setInterval(function(){
var oImges = document.getElementById("imgs");
oImges.setAttribute("src",L[0]);
L.push(L[0]);
L.shift()
return L;
/*L.appendChild(L[0]);*/
//alert(L)
},1000);
var  oBanner = document.getElementById("banner");
oBanner.onmouseover=function(){
clearInterval(times);
};
oBanner.onmouseout=function(){
moveStar()
};
}
moveStar();
</script>
</body>
</html>

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-20 19:30:58 | 显示全部楼层
showPic(elements){}函数,其中的elements是从哪里传过来的?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-6-21 09:21:52 | 显示全部楼层
casanava 发表于 2019-6-20 19:30
showPic(elements){}函数,其中的elements是从哪里传过来的?

Snip20190621_15.png


elements 是形参(parameter),每次单击事件被触发的时候(即 this 指向的事件)调用 showPic(this)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-21 13:04:16 | 显示全部楼层
好,谢谢大侠,能否画出js整体流程图,我还是不太清楚
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-22 19:07:32 | 显示全部楼层
"每次单击事件被触发的时候",根本就没有按钮,怎么单击?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-23 17:30:35 | 显示全部楼层
这个问题我自己解决了,呵呵
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-6-26 11:18:56 | 显示全部楼层
现在用原生js实现轮播的已经很少了,建议看一下BootStrap前端框架,一个集成好的js库,很多前端功能,可以直接拿过来用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-26 23:01:52 | 显示全部楼层
几行代码能解决的问题,没有必要弄的复杂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 18:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表