轮播图(jQuery)
效果图:

-----------------------------------------html-------------------------------------------------
<div id="wrapper"><!-- 最外层部分 -->
<div id="banner"><!-- 轮播部分 -->
<ul class="imgList"><!-- 图片部分 -->
<li><a href="#">puss in boots1</a></li>
<li><a href="#">puss in boots2</a></li>
<li><a href="#">puss in boots3</a></li>
<li><a href="#">puss in boots4</a></li>
<li><a href="#">puss in boots5</a></li>
</ul>
<a href="javascript:void(0);" width="20px" height="40px" id="prev">《</a>
<a href="javascript:void(0);" width="20px" height="40px" id="next">》</a>
<div class="bg"></div> <!-- 图片底部背景层部分-->
<ul class="infoList"><!-- 图片左下角文字信息部分 -->
<li class="infoOn">puss in boots1</li>
<li>puss in boots2</li>
<li>puss in boots3</li>
<li>puss in boots4</li>
<li>puss in boots5</li>
</ul>
<ul class="indexList"><!-- 图片右下角序号部分 -->
<li class="indexOn">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</div>
</div>
-------------------------------------------css-----------------------------------------
  body,div,ul,li,a,img{margin: 0;padding: 0;}
    ul,li{list-style: none;}
    a{text-decoration: none;}
    #wrapper{position: relative;margin: 30px auto;width: 400px;height: 200px;}
    #banner{position:relative;width: 400px;height: 200px;overflow: hidden;}
    .imgList{position:relative;width:2000px;height:200px;z-index: 10;overflow: hidden;}
    .imgList li{float:left;width:400px;height:200px;display: inline;}
    .imgList li:nth-child(1){background: #eee}
    .imgList li:nth-child(2){background: #6db2ec}
    .imgList li:nth-child(3){background: #6decac}
    .imgList li:nth-child(4){background: #ceec53}
    .imgList li:nth-child(5){background: #ec7653}
    #prev,
    #next{position: absolute;top:80px;z-index: 20;cursor: pointer;opacity: 0.2;filter:alpha(opacity=20);background: #eee;font-size: 30px}
    #prev{left: 10px;}
    #next{right: 10px;}
    #prev:hover,
    #next:hover{opacity: 0.5;filter:alpha(opacity=50);}
    .bg{position: absolute;bottom: 0;width: 400px;height: 40px;z-index:20;opacity: 0.4;filter:alpha(opacity=40);background: black;}
    .infoList{position: absolute;left: 10px;bottom: 10px;z-index: 30;}
    .infoList li{display: none;}
    .infoList .infoOn{display: inline;color: white;}
    .indexList{position: absolute;right: 10px;bottom: 5px;z-index: 30;}
    .indexList li{float: left;margin-right: 5px;padding: 2px 4px;border: 2px solid black;background: grey;cursor: pointer;}
    .indexList .indexOn{background: red;font-weight: bold;color: white;}
-----------------------------------------------js----------------------------------------------
var curNum={
                curIndex:0,//当前index
                imgLen:$(".imgList li").length  //图片总数
            }
            // 定时器自动变换2.5秒每次
            var autoChange = setInterval(function(){
                if(curNum.curIndex < curNum.imgLen-1){
                    curNum.curIndex ++;
                }else{
                    curNum.curIndex = 0;
                }
                //调用变换处理函数
                changeTo(curNum.curIndex);
            },2500);
            //左箭头滑入滑出事件处理
            $("#prev").hover(function(){
                //滑入清除定时器
                clearInterval(autoChange);
            },function(){
                //滑出则重置定时器
                autoChangeAgain();
            });
            //左箭头点击处理
            $("#prev").click(function(){
                //根据curIndex进行上一个图片处理
                curNum.curIndex = (curNum.curIndex > 0) ? (--curNum.curIndex) : (curNum.imgLen - 1);
                changeTo(curNum.curIndex);
            });
            //右箭头滑入滑出事件处理
            $("#next").hover(function(){
                //滑入清除定时器
                clearInterval(autoChange);
            },function(){
                //滑出则重置定时器
                autoChangeAgain();
            });
            //右箭头点击处理
            $("#next").click(function(){
                curNum.curIndex = (curNum.curIndex < curNum.imgLen - 1) ? (++curNum.curIndex) : 0;
                changeTo(curNum.curIndex);
            });
            //清除定时器时候的重置定时器--封装
            function autoChangeAgain(){
                    autoChange = setInterval(function(){
                    if(curNum.curIndex < curNum.imgLen-1){
                        curNum.curIndex ++;
                    }else{
                        curNum.curIndex = 0;
                    }
                //调用变换处理函数
                    changeTo(curNum.curIndex);
                },2500);
            }
            function changeTo(num){
                var goLeft = num *  400;
                $(".imgList").animate({left: "-" + goLeft + "px"},500);
                $(".infoList").find("li").removeClass("infoOn").eq(num).addClass("infoOn");
                $(".indexList").find("li").removeClass("indexOn").eq(num).addClass("indexOn");
            }
            //对右下角按钮index进行事件绑定处理等
            $(".indexList").find("li").each(function(item){
                $(this).hover(function(){
                    clearInterval(autoChange);
                    changeTo(item);
                    curIndex = item;
                },function(){
                    autoChangeAgain();
                });
            });
参考:https://www.cnblogs.com/czh-520
轮播图(jQuery)的更多相关文章
- 最最最简单的轮播图(JQuery)
		html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ... 
- 轮播图jQuery
		<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ... 
- jquery一个比较好的轮播图jQuery.kinMaxShow介绍
		kinMaxShow API 可选参数以及详解 kinMaxShow 主参数详解 参数名称 默认值 简单释义 height 500 [整型 (单位:像素)]焦点图高度,必须设置 缺省则启用默认高度 5 ... 
- Jquery 轮播图简易框架
		=====================基本结构===================== <div class="carousel" style="width: ... 
- 【jQuery】百分比自适应屏幕轮播图特效
		<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ... 
- jQuery淡入淡出效果轮播图
		用JavaScript做了平滑切换的焦点轮播图之后,用jQuery写了个简单的淡入淡出的轮播图,代码没有做优化,html结构稍微有一些调整,图片部分用ul替换了之前用的div. html结构如下: & ... 
- jquery手写焦点轮播图-------解决最后一张无缝跳转第一张的问题
		<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ... 
- jQuery制作焦点图(轮播图)
		焦点图(轮播图) 案例 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ... 
- jQuery插件slides实现无缝轮播图特效
		初始化插件: slides是一款基于jQuery无缝轮播图插件,支持图内元素动画,可以自定义动画类型 1 2 3 4 5 6 7 8 9 10 $(".slideInner").s ... 
随机推荐
- Linux基础命令---杀死进程killall
			killall killall可以根据名字来杀死进程,它会给指定名字的所有进程发送信息.如果没有指定信号名,则发送SIGTERM.信号可以通过名称(例如-HUP或-SIGHUP)或数字(例如-1)或选 ... 
- Linux基础命令---chsh
			chsh 改变用户登录时使用的shell,默认使用bash.如果命令行上没有给出shell,chsh将提示输入一个shell.chsh将接受系统上任何可执行文件的完整路径名.但是,如果shell未在“ ... 
- POJ 1018	Communication System (动态规划)
			We have received an order from Pizoor Communications Inc. for a special communication system. The sy ... 
- [转载]Oracle中的NVL函数
			Oracle中函数以前介绍的字符串处理,日期函数,数学函数,以及转换函数等等,还有一类函数是通用函数.主要有:NVL,NVL2,NULLIF,COALESCE,这几个函数用在各个类型上都可以. 下面简 ... 
- tensorflow serving
			1.安装tensorflow serving 1.1确保当前环境已经安装并可运行tensorflow 从github上下载源码 git clone --recurse-submodules https ... 
- Django框架---- 自定义分页组件
			分页的实现与使用 class Pagination(object): """ 自定义分页 """ def __init__(self,cur ... 
- Nginx rewrite(重写)
			Nginx Rewrite规则相关指令 Nginx Rewrite规则相关指令有if.rewrite.set.return.break等,其中rewrite是最关键的指令.一个简单的Nginx Re ... 
- hiho一下 第145周
			题目1 : 智力竞赛 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi.小Ho还有被小Hi强拉来的小Z,准备组队参加一个智力竞赛.竞赛采用过关制,共计N个关卡.在第i ... 
- springMVC之一(页面<--->控制器  互相传值,转发和重定向)
			#页面--->控制器1.request:不建议使用2.使用属性传值(建议使用)@RequestParam("name") String username3.使用Bean对象传 ... 
- Python3 hasattr()、getattr()、setattr()函数简介
			Python3 hasattr().getattr().setattr()函数简介 一.hasattr(object, name) 判断object对象中是否存在name属性,当然对于python的对 ... 
