轮播图制作
来源:互联网 发布:linux的cp命令~ 编辑:程序博客网 时间:2024/04/29 01:04
今天给大家介绍一个网上会经常看到,也是比较使用的小特效轮播图的制作。
首先我们还是先要大概了解轮播图的基本思路;
①、布局:外层div:超出隐藏 ul :加长,往左运动 left,left=0, li左浮动
②、事件:鼠标经过 鼠标离开
③、左运动,-2px ,并且,超过一本,就拉回来。
右边运动:left>0 往左边拉回来一半
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> * {padding: 0;margin: 0;} #box {width: 1000px;height: 180px;position: relative;margin: 100px auto;overflow: hidden;} #imglist {position: absolute;top: 0;left: 0;} img {width: 200px;height: 160px;float: left;} #left {width: 50px;height: 35px;background: beige;color: #000;font-size: 16px;line-height: 35px;text-align: center;position: absolute;top: 10px;left: 25px;} #right {width: 50px;height: 35px;background: beige;color: #000;font-size: 16px;line-height: 35px;text-align: center;position: absolute;top: 10px;left: 80px;} </style> <script type="text/javascript"> window.onload = function() { var oBox = document.getElementById("box"); var oImg = document.getElementById("imglist"); var aImg = oImg.getElementsByTagName('img'); var oLeft = document.getElementById("left"); var oRigth = document.getElementById("right"); var speed = -2; oImg.innerHTML = oImg.innerHTML + oImg.innerHTML;//复制两个盒子中的内容,内容加倍 oImg.style.width = aImg[0].offsetWidth * aImg.length + 'px';//oImg现在的宽度等于里面图片的宽度*图片的个数 function aa() { if(oImg.offsetLeft < -oImg.offsetWidth / 2) {//往左边走 //判断如果oImg离左边的距离小于他本身宽度的一半,就要他离左边的的距离。一定记住往左边走这个数值就是越来越小就是负数。 oImg.style.left = '0';// } if(oImg.offsetLeft > 0) {//往右边走 //同理,往右走时越来越大。一开始就要把内容一般放在左侧 oImg.style.left = -oImg.offsetWidth / 2 + 'px'; } oImg.style.left = oImg.offsetLeft + speed + 'px'; } //给一个定时器 var timer = null; clearInterval(timer);//运动之前先关闭定时器 timer = setInterval(aa, 30); oBox.onmouseover = function() {//鼠标移入会关闭定时器 clearInterval(timer); } oBox.onmouseout = function() {//鼠标离开就开启定时器 timer = setInterval(aa, 30); } oLeft.onclick = function() {//点击左时,speed的值是-2也就是往左侧走 speed = -2; } oRigth.onclick = function() {//点击右键是speed的值是2,正数往又走。 speed = 2; } } </script> </head> <body> <div id="box"> <div id="imglist"> <img src="http://desk.fd.zol-img.com.cn/t_s960x600c5/g5/M00/08/00/ChMkJlexsMuIQie-AAg2b09O224AAUdPgM-mJwACDaH277.jpg"> <img src="http://pic1.win4000.com/wallpaper/0/57eb6be0cecfa.jpg"> <img src="http://pic2016.5442.com:82/2016/0830/6/11.jpg%21960.jpg"> <img src="http://desk.fd.zol-img.com.cn/t_s960x600c5/g5/M00/00/0A/ChMkJ1ecZb2IQdT8AATJRtrzV70AAT_1gNHoPkABMle872.jpg"> <img src="http://pic1.win4000.com/wallpaper/1/57ecc8dfb3ced.jpg"> </div> </div> <div id="left">左</div> <div id="right">右</div> </body></html>
具体的解析在代码中都有注释。
0 0
- 轮播图制作
- Jquery轮播图制作
- 焦点轮播图的制作
- unslider制作轮播图
- 使用 jQuery 制作轮播图
- 纯CSS3制作轮播图
- jQuery制作幻灯片(轮播图)
- 用jquery制作轮播图
- 使用Banner制作轮播图
- 使用SuperSlide制作首页轮播图
- 纯css制作网页轮播图
- 使用原生js制作轮播图
- myFocus插件制作焦点轮播图
- js制作简单的轮播图
- position定位与轮播图制作
- 用jQuert制作轮播图-兼容各种浏览器
- 新手制作网络轮播图遇到的问题
- 猫猫学iOS 之广告轮播图,collectionView制作
- AMS 代码走读: Activity Start Procedure
- struts2+JDBC项目小试验
- vim使用入门教程-vimtutor
- expect命令怎么用?
- TCP/IP协议栈之四---------链路层
- 轮播图制作
- 数据挖掘方法:CRISP-DM跨行业标准过程
- linked list
- 排序算法之快速排序
- Java基础:动态代理
- JVM学习笔记之类加载器
- mysql sql技巧: 子查询改为连接查询&&涉及多个表的删除和更新
- jquery使用经验
- Windows系统下创建自签名ssl证书