使用js实现图片轮滑效果
来源:互联网 发布:淘宝客推广教程全攻略 编辑:程序博客网 时间:2024/04/30 15:54
经常在购物网站,看到那种图片轮滑的效果,所以看到有人实现了,所以我也就学习下了。
首先贴出html代码:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>document</title> <link rel="stylesheet" type="text/css" href="style.css"> <script type="text/javascript" src="javascript.js"></script></head><body><div id="flash"> <ul id="pic"> <li style="display:block"><img src=""></li> <li><img src="" ></li> <li><img src=""></li> <li><img src=""></li> <li><img src=""></li> <li><img src=""></li> </ul> <ol id="num"> <li class="activate">1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ol> <a href="javascript:;" class="arrow" id="left"><</a> <a href="javascript:;" class="arrow" id="right">></a></div></body></html>
图像的原路径我就不制定了,css文件
* { margin: 0; padding: 0; list-style: none;}a{ text-decoration: none; color: #fff;}#flash{ width: 730px; height: 454px; margin: 100px auto; position: relative; cursor: pointer;}#pic li{ position: absolute; top: 0; left: 0; z-index: 1; display: none;}#num{ position: absolute; left: 40%; bottom: 10px; z-index: 2; cursor:default;}#num li{ float: left; width: 20px; height: 20px; border-radius: 50%; background: #666; margin: 3px; line-height: 20px; text-align: center; color: #fff; cursor: pointer;}#num li.active{ background: #f00;}.arrow{ height: 60px; width: 30px; line-height: 60px; text-align: center; display: block; position: absolute; top:45%; background-color: rgba(0,0,0,0.3); z-index: 3; display: none;}.arrow:hover{ background: rgba(0,0,0,0.7);}#flash:hover .arrow{ display: block;}#left{ left: 2%;}#right{ right: 2%;}
js代码:
function $(id) { return typeof id==='string'?document.getElementById(id):id;}window.onload=function(){ var index=0; var timer=null; var pic=$("pic").getElementsByTagName("li"); var num=$("num").getElementsByTagName("li"); var flash=$("flash"); var left=$("left"); var right=$("right"); //单击左箭头 left.onclick=function() { index--; if (index<0) {index=num.length-1}; changeOption(index); } //单击右箭头 right.onclick=function(){ index++; if (index>=num.length) {index=0}; changeOption(index); } //鼠标划在窗口上面,停止计时器 flash.onmouseover=function(){ clearInterval(timer); } //鼠标离开窗口,开启计时器 flash.onmouseout=function() { timer=setInterval(run,2000) } //鼠标划在页签上面,停止计时器,手动切换 for(var i=0;i<num.length;i++) { num[i].id=i; num[i].onmouseover=function() { clearInterval(timer); changeOption(this.id); } } //定义计时器 timer=setInterval(run,2000) //封装函数run function run(){ index++; if (index>=num.length) {index=0}; changeOption(index); } //封装函数changeOption function changeOption(curindex) { console.log(index) for(var j=0;j<num.length;j++){ pic[j].style.display="none"; num[j].className=""; } pic[curindex].style.display="block"; num[curindex].className="active"; index=curindex; }}
如果想看结果可以上http://neal1991.pythonanywhere.com,这个有实现结果的。
1 0
- 使用js实现图片轮滑效果
- 使用js实现图片渐出效果
- 原生JS实现图片轮滚效果
- js实现图片轮播效果
- JS图片轮播切换效果实现
- JS实现图片轮播效果
- js实现图片轮播效果
- js实现图片轮播效果
- JS实现图片动态轮播效果
- js自动实现图片轮播效果
- 使用js实现有光源扫描图片效果
- 使用js方式实现图片变灰色的滤镜效果
- html 使用js+css+html实现图片划过预览效果
- JS实现图片幻灯片效果
- Js实现图片透明效果
- JS实现图片幻灯片效果
- JS实现图片幻灯片效果
- JS实现图片轮换效果
- TCP缓冲区大小及限制
- 8个实现在线浏览PDF文件的实用jQuery插件
- Linux学习笔记-结构化命令2
- easyui 调用ajax时的loading效果
- Jquery 操作 radio ,select 标签的操作
- 使用js实现图片轮滑效果
- 串口ISP方式下载单片机程序设计
- 数据结构—(3)逆序输出
- sciTE 编译lua
- 跨域问题解决方案(HttpClient安全跨域 & jsonp跨域)
- 判断两个数组是否 相等
- iOS开发系列--地图与定位
- Linux学习笔记-sed编辑器基础
- 项目开发,我的名字不可能这么可爱——开篇