JavaScript实现简单的图片轮播(通过点击数字切换)
来源:互联网 发布:oracle数据库cache 编辑:程序博客网 时间:2024/05/27 21:50
最终实现效果图
- 点击下标切换到该图片上
代码块
<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> <style> * { margin: 0; padding: 0 } ul { list-style: none } img { vertical-align: top } .box { width: 490px; height: 170px; margin: 100px auto; padding: 5px; border: 1px solid #ccc; } .inner { width: 490px; height: 170px; background-color: pink; overflow: hidden; position: relative; } .inner ul { width: 1000%; position: absolute; top: 0; left: 0; } .inner li { float: left; } .square { position: absolute; right: 10px; bottom: 10px; } .square span { display: inline-block; width: 16px; height: 16px; background-color: #fff; text-align: center; line-height: 16px; cursor: pointer; } .square span.current { background-color: orangered; color: #fff; } </style> </head> <body> <div class="box" id="box"> <div class="inner"> <ul> <li><a href="#"><img src="images/01.jpg" /></a></li> <li><a href="#"><img src="images/02.jpg" /></a></li> <li><a href="#"><img src="images/03.jpg" /></a></li> <li><a href="#"><img src="images/04.jpg" /></a></li> <li><a href="#"><img src="images/05.jpg" /></a></li> </ul> <div class="square"> <span class="current">1</span> <span>2</span> <span>3</span> <span>4</span> <span>5</span> </div> </div> </div> <script type="text/javascript"> //鼠标经过按钮 按钮排他 var box = document.getElementById("box"); var inner = box.children[0]; //获取box下的第一个元素,也就是inner var ul = inner.children[0]; //获取inner下的ul var squareList = inner.children[1]; //获取inner下的第二个元素 var squares = squareList.children; //获取所有的按钮 var imgWidth = inner.offsetWidth;// alert(imgWidth); //给每个按钮注册鼠标经过事件 for(var i=0; i<squares.length; i++){ squares[i].index = i; //把索引保存在自定义属性中 squares[i].onmouseover = function(){ //鼠标经过事件 //排他 干掉所有人 for(var j=0; j<squares.length; j++){ squares[j].className = ""; } //留下我自己 this.className = "current"; //以动画的方式把ul移动到指定的位置 //目标 和当前按钮索引有关,和图片宽度有关 而且是负数 var target = -this.index * imgWidth; //获取到索引 animate(ul,target); } } function animate(obj, target) { clearInterval(obj.timer); obj.timer = setInterval(function () { var step = 20; var step = obj.offsetLeft < target ? step : -step; if (Math.abs(obj.offsetLeft - target) > Math.abs(step)) { obj.style.left = obj.offsetLeft + step + "px"; } else { obj.style.left = target + "px"; clearInterval(obj.timer); } }, 15) } </script> </body></html>
阅读全文
2 0
- JavaScript实现简单的图片轮播(通过点击数字切换)
- JavaScript实现简单的图片轮播(通过点击左右焦点切换)
- 简单的点击实现图片轮播~
- javascript图片轮播的简单实现
- 带数字的图片切换+轮播
- 简单通过点击左右按钮来改变图片轮播
- JavaScript实现最简单的图片轮播
- JavaScript 实现简单的点击切换背景
- 纯原生javascript实现图片轮播切换效果代码。
- 可以通过左右滑动和点击小按钮来实现图片的轮播
- javascript实现的简单图片左右切换
- JavaScript实现简单的图片切换
- 最简单的图片轮播实现
- jQuery实现简单的图片轮播
- html简单图片轮播的实现
- 简单的图片轮播实现
- 简单的图片、文字轮播,及切换动画
- 原生javascript实现图片自动轮播和点击轮播代码
- 序列流(集合流) * 把n个流合并在一起读取
- SpringMVC RequestMapping用法详解
- iOS 开发 图片缩略图的生成,展示图片中间一部分
- tensorflow 学习笔记12 循环神经网络RNN LSTM结构实现MNIST手写识别
- 【Mybatis从0到1-010】一对一查询(resultType和resultMap)
- JavaScript实现简单的图片轮播(通过点击数字切换)
- mybatis常用jdbcType数据类类型对照表
- vs断点失效
- android下adb 命令(转载)
- ViewPager + fragment 中 懒加载的一点经验
- 机器学习中决策树浅析
- 收集的库或框架或第三方平台
- Failed to resolve: com.android.support.constraint:constraint-layout:1.0.0-alpha9 <a
- 【转载】leveldb源码分析—Recover和Repair