左右无缝轮播图的实现
无缝轮播图:
<title>无缝轮播图</title><style>*{margin: 0;padding:0; }ul{list-style: none;}.banner{width: 600px;height: 300px;border: 2px solid #ccc;margin: 100px auto;position: relative;overflow: hidden;}.img{position: absolute;top: 0;left: 0}.img li{float: left;}.num{position: absolute;bottom: 10px;width: 100%;text-align: center;font-size: 0;}.num li{width: 10px;height: 10px;background:rgba(0,0,0,0.5);display: block;border-radius: 100%;display: inline-block;margin: 0 5px;cursor: pointer;}.btn{display: none;}.btn span{display: block;width: 50px;height: 100px;background: rgba(0,0,0,0.6);color: #fff;font-size: 40px;line-height: 100px;text-align: center;cursor:pointer;}.btn .prev{position: absolute;left: 0;top: 50%;margin-top: -50px;}.btn .next{position: absolute;right: 0;top: 50%;margin-top: -50px;}.num .active{background-color: #fff;}</style><script src="http://apps.bdimg.com/libs/jquery/1.8.3/jquery.min.js"></script>
</head>
<body>
<div class="banner"><ul class="img"><li><a href="#"><img src="img/1.jpg" alt="第1张图片"></a></li><li><a href="#"><img src="img/2.jpg" alt="第2张图片"></a></li><li><a href="#"><img src="img/3.jpg" alt="第3张图片"></a></li><li><a href="#"><img src="img/4.jpg" alt="第4张图片"></a></li><li><a href="#"><img src="img/5.jpg" alt="第5张图片"></a></li></ul><ul class="num"></ul> //<div class="btn"><span class="prev"><</span><span class="next">></span></div></div><script>$(function(){var i=0;var timer=null;for (var j = 0; j < $('.img li').length; j++) { //创建圆点$('.num').append('<li></li>')}$('.num li').first().addClass('active'); //给第一个圆点添加样式var firstimg=$('.img li').first().clone(); //复制第一张图片$('.img').append(firstimg).width($('.img li').length*($('.img img').width())); //将第一张图片放到最后一张图片后,设置ul的宽度为图片张数*图片宽度// 下一个按钮$('.next').click(function(){i++;if (i==$('.img li').length) {i=1; //这里不是i=0$('.img').css({left:0}); //保证无缝轮播,设置left值};$('.img').stop().animate({left:-i*600},300);if (i==$('.img li').length-1) { //设置小圆点指示$('.num li').eq(0).addClass('active').siblings().removeClass('active');}else{$('.num li').eq(i).addClass('active').siblings().removeClass('active');}})// 上一个按钮$('.prev').click(function(){i--;if (i==-1) {i=$('.img li').length-2;$('.img').css({left:-($('.img li').length-1)*600});}$('.img').stop().animate({left:-i*600},300);$('.num li').eq(i).addClass('active').siblings().removeClass('active');})//设置按钮的显示和隐藏$('.banner').hover(function(){$('.btn').show();},function(){$('.btn').hide();})//鼠标划入圆点$('.num li').mouseover(function(){var _index=$(this).index();$('.img').stop().animate({left:-_index*600},150);$('.num li').eq(_index).addClass('active').siblings().removeClass('active');})//定时器自动播放timer=setInterval(function(){i++;if (i==$('.img li').length) {i=1; $('.img').css({left:0});};$('.img').stop().animate({left:-i*600},300);if (i==$('.img li').length-1) { $('.num li').eq(0).addClass('active').siblings().removeClass('active');}else{$('.num li').eq(i).addClass('active').siblings().removeClass('active');}},1000)//鼠标移入,暂停自动播放,移出,开始自动播放$('.banner').hover(function(){ clearInterval(timer);},function(){timer=setInterval(function(){i++;if (i==$('.img li').length) {i=1; $('.img').css({left:0});};$('.img').stop().animate({left:-i*600},300);if (i==$('.img li').length-1) { $('.num li').eq(0).addClass('active').siblings().removeClass('active');}else{$('.num li').eq(i).addClass('active').siblings().removeClass('active');}},1000)})})
</script>
转载于:https://www.cnblogs.com/webcome/p/5447865.html
左右无缝轮播图的实现相关推荐
- jq 实现无缝轮播图
工作中经常会用到轮播图,这里记载两种轮播图,供大家参考 一.自动播放的无缝轮播图(一张图片占满屏) 首先是HTML, <div class='bannerCon'><ul class ...
- 原生JS无缝轮播图(左右切换、导航跟随)
原生JS无缝轮播图(左右切换.导航图标) 功能: 1.实现轮播图的左右无缝切换 2.实现导航图标的跟随显示.点击切换 3.使用定时器进行无缝轮播 css部分 <style>/* 轮播图容器 ...
- 左右无缝轮播html,JS实现左右无缝轮播图代码
废话不多说了,直接给大家贴代码了. 无缝轮播图: 无缝轮播图 *{margin: 0;padding:0; } ul{list-style: none;} .banner{width: 600px;h ...
- html 无缝轮播图完整代码
1,实现轮播效果 2,实现代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...
- javaScript小案例------js实现无缝轮播图效果篇
原生js书写无缝轮播图 javaScript无缝轮播图思路及源码 无缝轮播图效果 总体思路 下面附上代码: html css animate.js index.js javaScript无缝轮播图思路 ...
- jquery实现动态左右无缝轮播图
JQ代码实现动态无缝轮播图功能 相比之下 运用jquery比js原生代码 书写更为方便 简介 通俗易懂 以下为代码: <!DOCTYPE html> <html><hea ...
- vue如何使用原生js写动画效果_原生js写一个无缝轮播图插件(支持vue)
轮播图插件(Broadcast.js) 前言:写这个插件的原因 前段时间准备用vue加上网易云的nodejs接口,模拟网易云音乐移动端.因为想自己写一遍所有的代码以及加固自己的flex布局,所以没有使 ...
- 例子---JS无缝轮播图
DuangDuang,今天我们来一起说说JS实现无缝轮播.没错,顾名思义,就是我们脑子中浮现的类似淘宝主页面中间部分的那个滚动图.这个轮播图的使用频率还是很大的,所以还是很有必要好好研究一下的. 哈哈 ...
- 轮播图 (无缝轮播图)
1.无缝轮播核心: 在最后多加一张第一张图, 当达到最后一张t1的时候 一瞬间将ul拉回到0的位置 结构: <div class="wrap"><ul>&l ...
最新文章
- 数据结构实验之栈与队列五:下一较大值(一)
- eclipse调试报错,无法进入类的解决办法
- 处女座|处女座性格分析
- 中文 转gbk编码_go查找中文首字母
- 二元函数洛必达求极限_洛必达法则的几个例子
- 【Python】pandas模块操作大型数据集
- 【本地差分隐私与随机响应代码实现】差分隐私代码实现系列(十三)
- [Swift]LeetCode268. 缺失数字 | Missing Number
- sql group by 取每组符合条件_SPL 简化 SQL 案例详解:计算各组前 N 行
- 心大于物 ----论意识心灵与物理大脑的关系
- centos无法使用ifconfig命令,安装方法
- 逐步理解SpringMVC
- The Introduction Of Filter
- 无线网卡mac地址修改
- nginx工作原理详解
- 到2020年,烟台重点林区视频监控率将达90%以上
- 数字图像-颜色表介绍
- 大屏数据展示,5.5寸大屏幕手机更受消费者喜爱
- 28_RTC实时时钟BKP备份寄存器
- matplotlib绘制折线图的柱状图