轮播图-鼠标滑入图片,停止轮播,鼠标划出后,启动轮播
来源:互联网 发布:汽车行业工资 知乎 编辑:程序博客网 时间:2024/04/30 11:27
今天刚刚学习了一下banner的图片轮播效果,感觉还可以,有兴趣的可以看一下
<!DOCTYPE html>
<html><head lang="en">
<meta charset="UTF-8">
<title>轮播图-鼠标滑入图片,停止轮播,鼠标划出后,启动轮播</title>
<style>
*{
margin: 0;
padding: 0;
}
#div1{
width:810px;
height: 320px;
background: red;
margin: 5px auto;
position: relative;
overflow: hidden;
}
#div2{
width: 1000px;
height: 320px;
position:absolute;
top: 0;
left: 0;
}
li{
float: left;
}
.imgul{
width:4100px;
list-style: none;
}
.navul{
width: 100px;
height: 20px;
position: absolute;
top: 270px;
left: 600px;
list-style: none;
}
.navul li{
width: 20px;
height: 20px;
background: red;
margin-left: 2px;
}
.navul li .lion{
background: blue;
}
</style>
</head>
<body>
<div id="div1">
<div id="div2">
<ul id="imgul" class="imgul">
<li class="imgli"> <img src="../img/001.jpg"></li>
<li class="imgli"> <img src="../img/002.jpg"></li>
<li class="imgli"> <img src="../img/003.jpg"></li>
<li class="imgli"> <img src="../img/004.jpg"></li>
<li class="imgli"> <img src="../img/001.jpg"></li>
</ul>
</div>
<ul id="ul1" class="navul">
<li style="background:blue;">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
</div>
<script src="startMoveBool.js"></script>
<script type="text/javascript">
//存放图片的容器。也就是运动的操作对象
var oDiv2=document.getElementById("div2");
//var index=1;
var timer=null;//自动轮播的定时器id
var pageIndex=1;//当前页码
var imgWidth=810;//图片的宽度
var lis=document.getElementById("ul1").children;//获取所有的页码li
for(var i=0;i<lis.length;i++){
//给所有表示页码的li 绑定点击事件
lis[i].onclick=function(){
var index=parseInt(this.innerHTML);//获取点击的页码,并转成数值
var targetLeft=-1*(index-1)*imgWidth;//计算left的目标值。
for(var j=0;j<lis.length;j++){
lis[j].style.background="red";
//变更图片后,页码的li 样式需要变更选中状态
}
this.style.background="blue"; //点击的对象变为 blue。
//清理自动轮播的定时器,
clearInterval(timer);
//点击运动到相应页码
//运动结束后,需要重新启动 轮播的定时器 moveBan
startMove(oDiv2,{left:targetLeft},function(){
moveBan();
});
//点击后,更新页码的记录pageIndex= 为当前点击页码index。
pageIndex=index;
}
}
//封装的轮播函数
function moveBan(){
clearInterval(timer);//清理定时器
timer =setInterval(function(){//创建定时器。开始轮播图片
pageIndex++;//先加加后 ,pageIndex表示将要显示的图片页码。
if(pageIndex==6)
{//当将要显示的图片页码为6时,
// 其实我们实际要显示的是第二页图片也就是pageindex=2
//同时我们需要把left重新设置为0;从头开始播放。
oDiv2.style.left="0px";
pageIndex=2;
}
//计算需要移动到的left 目标值。
var targetLeft=-1*(pageIndex-1)*imgWidth;
//开始条用startmove函数,来完成移动。
startMove(oDiv2,{left:targetLeft});
//变更页码li的样式
for(var j=0;j<lis.length;j++){
lis[j].style.background="red";
}
if(pageIndex==5){
//当pageindex==5时,页码需要显示1,lis的下标为0
lis[0].style.background="blue";
}
else{
lis[pageIndex-1].style.background="blue";
}
},3000);
}
//默认页面加载后,启动自动轮播。
moveBan();
//对图片绑定 mouseover mouseout事件,
//当鼠标移入时,清理自动播放的定时器
//当鼠标移出时,启动自动包房的定时器
var imgLis=document.getElementById("imgul").children;
for(var i=0;i<imgLis.length;i++){
imgLis[i].onmouseover=function(){
clearInterval(timer);
}
imgLis[i].onmouseout=function(){
moveBan();
}
}
</script>
</body>
</html>
附源码下载
0 0
- 轮播图-鼠标滑入图片,停止轮播,鼠标划出后,启动轮播
- 图片轮播,鼠标放上去即停止,鼠标移除即播放下一张图片
- jquery实现鼠标悬浮停止轮播特效
- 鼠标滚轮滑动轮播
- JavaScript实现图片轮播和鼠标悬停显示
- tab简单轮播,鼠标移动感应。
- Js实现图片轮播,以及鼠标移动选择指定图片
- Jquery鼠标控制图片轮播,animate()动画队列,stop()清除队列
- jQuery实现图片轮播且鼠标可控制显示,使用animate函数
- 利用JS实现基本的图片轮播功能,包括鼠标的经过事件
- 自定义轮播图,实现无限轮播、自动轮播、按下停止轮播
- 使用handler使用图片轮播及触摸停止
- 非常简单的图片轮播,自动轮播,按下和移动停止轮播,有点击事件
- APP首次启动:图片轮播3秒后进入首页或点击按钮进入首页(这里用的banner轮播)
- TextView轮播类似图片轮播
- 图片轮播之无限轮播
- 文字轮播与图片轮播
- 图片轮播 自动轮播
- HDU 4089Activation 概率dp好题
- 共同学习Java源代码--数据结构--AbstractList抽象类(四)
- Kruskal算法
- ZOJ 3869:Ace of Aces【水】
- 使用Visual Studio开发C程序
- 轮播图-鼠标滑入图片,停止轮播,鼠标划出后,启动轮播
- linux 下部署项目可能遇到的问题
- 第十周第十一周项目1阅读程序(2)
- 结构体字节对齐
- 巧用clear:both
- 添加php中PECL HTTP 扩展,终极解决办法
- s5pv210 datasheet_overview
- EditText光标靠右显示
- PCA的数学原理