1.HTML结构:

<head>

<script type="text/javascript" src="../jquery-1.8.3/jquery.js"></script>

</head>

<body>

  <div class="banner">

    <ul class="img">

      <li><a href=""><img src="img/01.jpg" alt="1"></a>

      <li><a href=""><img src="img/02.jpg" alt="2"></a>

      <li><a href=""><img src="img/03.jpg" alt="3"></a>

      <li><a href=""><img src="img/04.jpg" alt="4"></a>

    </ul>

    <ul class="num"></ul>

    <div class="btn btn_left">&lt</div>
            <div class="btn btn_right">&gt</div>

  </div>

</body>

2.css样式:

 *{margin:;padding:;list-style: none;}
.banner{margin:100px auto;border:5px solid #000;width:690px;height:690px;overflow: hidden;
position:relative;}
.banner .img{width:5000px;position: absolute;left:;top:;}
.banner .img li{float:left;}
.banner .num{position: absolute;width:100%;bottom:10px;left:;font-size:;text-align: center;}
.banner .num li{width:10px;height:10px;background-color:#888;border-radius: 50%;
display: inline-block;margin:0px 3px;cursor: pointer;}
.banner .num li.on{background-color:#f60;} .banner .btn{width:50px;height:60px;background:rgba(0,0,0,0.5);position:absolute;top:50%;margin-top:-25px;
font-size:40px;line-height:50px;text-align: center;color:#fff;font-family: "宋体";}
.banner .btn_left{left:;}
.banner .btn_right{right:;}

3.jQuery结构:

 $(function(){                 var i=0;
//将第一张复制
var clone=$(".banner .img li").first().clone();
//然后粘贴
$(".banner .img").append(clone);
//size()被length取代
var size=$(".banner .img li").length;
for(var j=0;j<size-1;j++){
$(".banner .num").append("<li></li>");
}
$(".banner .num li").first().addClass("on");
//鼠标划入圆点
$(".banner .num li").hover(function(){
//获取当前元素的索引值
var index=$(this).index();
i=index;
$(".banner .img").stop().animate({left:-index*690},500)
$(this).addClass("on").siblings().removeClass("on");
})
//自动轮播
var t=setInterval(
moverl,2000)
//鼠标移入定时器被关闭
$(".banner").hover(function(){
clearInterval(t);
},function(){
t=setInterval(moverl,2000)
})
//向左的按钮点击事件
$(".banner .btn_left").click(function(){
moverl();
})
//封装函数
function moverl(){
i++;
if(i==size){
$(".banner .img").css({left:});
i=1;
}
$(".banner .img").stop().animate({left:-i*690},500)
if(i==size-1){
$(".banner .num li").eq(0).addClass("on").siblings().removeClass("on");
}else{
$(".banner .num li").eq(i).addClass("on").siblings().removeClass("on");
} } $(".banner .btn_right").click(function(){
moverr();
})
function moverr(){
i--;
if(i==-1){
//索引从0开始
$(".banner .img").css({left:-(size-1)*690});
i=size-2;
}
$(".banner .img").stop().animate({left:-i*690},500)
$(".banner .num li").eq(i).addClass("on").siblings().removeClass("on");
}
})

jquery左右切换的无缝滚动轮播图的更多相关文章

  1. js原生选项卡(自动播放无缝滚动轮播图)二

    今天分享一下自动播放轮播图,自动播放轮播图是在昨天分享的轮播图的基础上添加了定时器,用定时器控制图片的自动切换,函数中首先封装一个方向的自动播放工能的小函数,这个函数中添加定时器,定时器中可以放向右走 ...

  2. JavaScript+HTML+CSS 无缝滚动轮播图的两种方式

    第一种方式 在轮播图最后添加第一张,一张重复的图片. 点击前一张,到了第一张,将父级oList移动到最后一张(也就是添加的重复的第一张),在进行后续动画. 点击下一张,到了最后一张(也就是添加的重复的 ...

  3. js原生选项卡(包含无缝滚动轮播图)一

    原生js选项卡的几种写法,整片文章我会由简及难的描述几种常用的原生选项卡的写法: Improve little by little every day! 1>基本选项卡: 思路:循环中先清除再添 ...

  4. jQuery与原生js实现banner轮播图

    jQuery与原生js实现banner轮播图: (jq需自己加载)(图片需自己加载) <!DOCTYPE html> <html> <head> <meta ...

  5. iOS swift版本无限滚动轮播图

    之前写过oc版本的无限滚动轮播图,现在来一个swift版本全部使用snapKit布局,数字还是pageConrrol样式可选 enum typeStyle: Int { case pageContro ...

  6. JS---案例:无缝的轮播图

    案例:无缝的轮播图 w <!DOCTYPE html> <html> <head lang="en"> <meta charset=&qu ...

  7. 原生无缝Banner轮播图

    话不多说,先展示效果图.由于录制工具,稍显卡顿,实际是流畅的.可以看到实现了无缝轮播,鼠标悬停,点击左右上下按钮切换Banner的功能,如图1所示. 图1 原生无缝banner效果展示 以我这个轮播图 ...

  8. JQuery手写一个简单的轮播图

    做出来的样式: 没有切图,就随便找了一些图片来实现效果,那几个小星星萌不萌. 这个轮播图最主要的部分是animate(),可以先熟悉下这个方法. 代码我放到了github上,链接:https://gi ...

  9. 用jQuery实现简单的简单的轮播图

    图片来源 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

随机推荐

  1. 【LeetCode】152. Maximum Product Subarray

    题目: Find the contiguous subarray within an array (containing at least one number) which has the larg ...

  2. 如何连接远程redis,并且选择某个库进行操作

    public static Jedis getJedis(){ Jedis jedis = new Jedis("222.201.145.215"); jedis.select(1 ...

  3. Spring+SpringMVC+MyBatis深入学习及搭建(十六)——SpringMVC注解开发(高级篇)

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7085268.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十五)——S ...

  4. Log4Net不同日志类型写入到不同文件

    1. 一直在用log4net,从来没有自己整理过.实践出真知,只有自己整理过才能真正掌握. 2. log4net,应该读logfornet,以前一直说log4,log4............ 安装 ...

  5. 微信小程序知识总结及案例集锦

    微信小程序知识总结及案例集锦 微信小程序的发展会和微信公众号一样,在某个时间点爆发 学习路径 微信小程序最好的教程肯定是官方的文档啦,点击这里直达 微信官方文档 认真跟着文档看一遍,相信有vue前端经 ...

  6. 利用libcurl进行post

    逛百度知道看到有个人提问:http://zhidao.baidu.com/question/1447092283140740700 C写HTTP应用只有疯子才会老老实实的SOCKET编程吧?我后来还是 ...

  7. 002.Create a web API with ASP.NET Core MVC and Visual Studio for Windows -- 【在windows上用vs与asp.net core mvc 创建一个 web api 程序】

    Create a web API with ASP.NET Core MVC and Visual Studio for Windows 在windows上用vs与asp.net core mvc 创 ...

  8. LInux基础命令分类

    1. 命令的概念 命令的执行过程 系统第一次执行外部命令时Hash缓存表为空,系统会先从PTAH路径下寻找命令,找到后会将路径加入到Hasa缓存中,当再次执行此命令时会直接从Hash的路径下执行,如果 ...

  9. Es6 新增函数

    ====函数的扩展 -----ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console.log( ...

  10. 51nod_1605:棋盘问题

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1605 题目中最有用的点其实还是x必为奇数 #include& ...