jQuery实现大图轮播


Posted in Javascript onFebruary 13, 2017

css样式:

*{
 margin: 0;
 padding: 0;
}
ul{
 list-style:none;
}
.slideShow{
 width: 620px;
 height: 700px; /*其实就是图片的高度*/
 border: 1px #eeeeee solid;
 margin: 100px auto;
 position: relative;
 overflow: hidden; /*此处需要将溢出框架的图片部分隐藏*/
}
.slideShow ul{
 width: 2500px;
 position: relative; /*此处需注意relative : 对象不可层叠,但将依据left,right,top,bottom等属性在正常文档流中偏移位置,如果没有这个属性,图片将不可左右移动*/
}
.slideShow ul li{
 float: left; /*让四张图片左浮动,形成并排的横着布局,方便点击按钮时的左移动*/
 width: 620px;
}
.slideShow .showNav{ /*用绝对定位给数字按钮进行布局*/
 position: absolute;
 right: 10px;
 bottom: 5px;
 text-align:center;
 font-size: 12px; 
 line-height: 20px;
}
.slideShow .showNav span{
 cursor: pointer;
 display: block;
 float: left;
 width: 20px;
 height: 20px;
 background: #ff5a28;
 margin-left: 2px;
 color: #fff;
}
.slideShow .showNav .active{
 background: #b63e1a;
}

js代码规范:

<script src="../../../jQuery/js/jquery-2.1.4.js"></script> <script type="text/javascript">
$(document).ready(function(){ 
var slideShow=$(".slideShow"),  //获取最外层框架的名称 
ul=slideShow.find("ul"), 
showNumber=slideShow.find(".showNav span"),   //获取按钮 
oneWidth=slideShow.find("ul li").eq(0).width();   //获取每个图片的宽度 
var timer=null;   //定时器返回值,主要用于关闭定时器 
var iNow=0;   //iNow为正在展示的图片索引值,当用户打开网页时首先显示第一张图,即索引值为0 
showNumber.on("click",function(){    //为每个按钮绑定一个点击事件  
$(this).addClass("active").siblings().removeClass("active");  //按钮点击时为这个按钮添加高亮状态,并且将其他按钮高亮状态去掉 
var index=$(this).index();    //获取哪个按钮被点击,也就是找到被点击按钮的索引值 
iNow=index; 
ul.animate({ "left":-oneWidth*iNow,  //注意此处用到left属性,所以ul的样式里面需要设置position: relative; 让ul左移N个图片大小的宽度,N根据被点击的按钮索引值iNOWx确定 
 }) 
 }); 
 function autoplay(){ 
timer=setInterval(function(){   //打开定时器 
iNow++;     //让图片的索引值次序加1,这样就可以实现顺序轮播图片 
 if(iNow>showNumber.length-1){   //当到达最后一张图的时候,让iNow赋值为第一张图的索引值,轮播效果跳转到第一张图重新开始 
iNow=0; } 
showNumber.eq(iNow).trigger("click");   //模拟触发数字按钮的click 

},2000);     //2000为轮播的时间
} 
 autoplay(); 
 slideShow.hover( function(){clearInterval(timer);},autoplay); 另外注意setInterval的用法比较关键。
})
</script>

主体代码:

<body>
 <div class="slideShow">
 <!--图片布局开始-->
 <ul>
 <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="images/view/111.jpg"/></a></li>
 <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="images/view/112.jpg" /></a></li>
 <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="images/view/113.jpg" /></a></li>
 <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="images/view/114.jpg" /></a></li>
 </ul>
 <!--图片布局结束-->
 <!--按钮布局开始-->
 <div class="showNav">
 <span class="active">1</span>
 <span>2</span>
 <span>3</span>
 <span>4</span>
 </div>
 <!--按钮布局结束-->
 </div>
</body>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
广告代码静态化js通用函数
May 09 Javascript
javascript学习笔记--数字格式类型
May 22 Javascript
jquery删除指定子元素代码实例
Jan 13 Javascript
在JavaScript中操作时间之getMonth()方法的使用
Jun 10 Javascript
jquery图片滚动放大代码分享(1)
Aug 25 Javascript
js查看一个函数的执行时间实例代码
Sep 12 Javascript
JS+CSS实现仿雅虎另类滑动门切换效果
Oct 13 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
Jan 19 Javascript
Java框架SSH结合Easyui控件实现省市县三级联动示例解析
Jun 12 Javascript
JS实现数组的增删改查操作示例
Aug 29 Javascript
JavaScript使用indexOf()实现数组去重的方法分析
Sep 04 Javascript
element-ui如何防止重复提交的方法步骤
Dec 09 Javascript
使用ionic在首页新闻中应用到的跑马灯效果的实现方法
Feb 13 #Javascript
你真的了解BOM中的history对象吗
Feb 13 #Javascript
微信小程序-获得用户输入内容
Feb 13 #Javascript
js实现textarea限制输入字数
Feb 13 #Javascript
Canvas实现动态的雪花效果
Feb 13 #Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
Feb 13 #Javascript
Bootstrap选项卡学习笔记分享
Feb 13 #Javascript
You might like
PHP与SQL注入攻击[一]
2007/04/17 PHP
PHP APC的安装与使用详解
2013/06/13 PHP
CodeIgniter配置之autoload.php自动加载用法分析
2016/01/20 PHP
浅析PHP7的多进程及实例源码
2019/04/14 PHP
js实现ASP分页函数 HTML分页函数
2006/09/22 Javascript
超清晰的document对象详解
2007/02/27 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
前台js调用后台方法示例
2013/12/02 Javascript
javascript贪吃蛇完整版(源码)
2013/12/09 Javascript
浅谈JavaScript函数节流
2014/12/09 Javascript
javascript动态创建表格及添加数据实例详解
2015/05/13 Javascript
jquery简单倒计时实现方法
2015/12/18 Javascript
JavaScript中定时控制Throttle、Debounce和Immediate详解
2016/11/17 Javascript
Bootstrap基本样式学习笔记之按钮(4)
2016/12/07 Javascript
JQuery异步提交表单与文件上传功能示例
2017/01/12 Javascript
jquery.cookie.js的介绍与使用方法
2017/02/09 Javascript
js实现多张图片延迟加载效果
2017/07/17 Javascript
React-router v4 路由配置方法小结
2017/08/08 Javascript
angular.js4使用 RxJS 处理多个 Http 请求
2017/09/23 Javascript
express默认日志组件morgan的方法
2018/04/05 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
Nodejs实现用户注册功能
2019/04/14 NodeJs
解决vant框架做H5时踩过的坑(下拉刷新、上拉加载等)
2020/11/11 Javascript
Python3使用TCP编写一个简易的文件下载器功能
2019/05/08 Python
Python拆分大型CSV文件代码实例
2019/10/07 Python
tensorflow 变长序列存储实例
2020/01/20 Python
分享CSS3中必须要知道的10个顶级命令
2012/04/26 HTML / CSS
Html5 APP中监听返回事件处理的方法示例
2018/03/15 HTML / CSS
美国最大的半成品净菜电商:Blue Apron(蓝围裙)
2018/04/27 全球购物
AutoShack.com加拿大:北美主要的汽车零部件零售商
2019/07/24 全球购物
终止合同协议书
2014/04/17 职场文书
药剂专业毕业生求职信
2014/06/24 职场文书
2014年文艺部工作总结
2014/11/17 职场文书
晚会开幕词范文
2016/03/04 职场文书
2019最新版试用期劳动合同模板!
2019/07/04 职场文书
解决golang 关于全局变量的坑
2021/05/06 Golang