jQuery图片轮播的具体实现


Posted in Javascript onSeptember 11, 2013

效果如下:

jQuery图片轮播的具体实现

先看一看html代码,以及对应的css代码:

<div id="scrollPics">
    <ul class="slider" >
        <li><img src="images/ads/1.gif"/></li>
        <li><img src="images/ads/2.gif"/></li>
        <li><img src="images/ads/3.gif"/></li>
        <li><img src="images/ads/4.gif"/></li>
        <li><img src="images/ads/5.gif"/></li>
    </ul>
    <ul class="num" >
        <li class="on">1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
    </ul>
</div>

#scrollPics{
    height: 150px;
    width: 100%;
    margin-bottom: 10px;
    overflow: hidden;
    position:relative;
}
.num{
    position:absolute;
    right:5px; 
    bottom:5px;
}
#scrollPics .num li{
    float: left;
    color: #FF7300;
    text-align: center;
    line-height: 16px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    overflow: hidden;
    margin: 3px 1px;
    border: 1px solid #FF7300;
    background-color: #fff;
}
#scrollPics .num li.on{
    color: #fff;
    line-height: 21px;
    width: 21px;
    height: 21px;
    font-size: 16px;
    margin: 0 1px;
    border: 0;
    background-color: #FF7300;
    font-weight: bold;
}

用绝对定位设置列表 num 的位置,对 li 设置相关样式,on 表示显示图片对应的数字列表中 li 的样式类别。

接下来是 js 代码:

//滚动广告
    var len = $(".num > li").length;
    var index = 0;  //图片序号
    var adTimer;
    $(".num li").mouseover(function() {
        index = $(".num li").index(this);  //获取鼠标悬浮 li 的index
        showImg(index);
    }).eq(0).mouseover();
    //滑入停止动画,滑出开始动画.
    $('#scrollPics').hover(function() {
        clearInterval(adTimer);
    }, function() {
        adTimer = setInterval(function() {
            showImg(index)
            index++;
            if (index == len) {       //最后一张图片之后,转到第一张
                index = 0;
            }
        }, 3000);
    }).trigger("mouseleave");
    function showImg(index) {
        var adHeight = $("#scrollPics>ul>li:first").height();
        $(".slider").stop(true, false).animate({
            "marginTop": -adHeight * index + "px"    //改变 marginTop 属性的值达到轮播的效果
        }, 1000);
        $(".num li").removeClass("on")
            .eq(index).addClass("on");
    }
Javascript 相关文章推荐
JQuery与Ajax调用新浪API获取短网址的代码
Feb 07 Javascript
JavaScript取得WEB安全颜色列表的方法
Jul 14 Javascript
数据结构中的各种排序方法小结(JS实现)
Jul 23 Javascript
基于AngularJS前端云组件最佳实践
Oct 20 Javascript
微信小程序 简单教程实例详解
Jan 13 Javascript
jQuery Masonry瀑布流插件使用方法详解
Jan 18 Javascript
JavaScript Base64 作为文件上传的实例代码解析
Feb 14 Javascript
JavaScript 实现 Tab 点击切换实例代码
Mar 25 Javascript
Vue 2.0中生命周期与钩子函数的一些理解
May 09 Javascript
详解vue移动端日期选择组件
Feb 22 Javascript
js判断非127开头的IP地址的实例代码
Jan 05 Javascript
vue.js click点击事件获取当前元素对象的操作
Aug 07 Javascript
Javascript倒计时页面跳转实例小结
Sep 11 #Javascript
用javascript判断IE版本号简单实用且向后兼容
Sep 11 #Javascript
js open() 与showModalDialog()方法使用介绍
Sep 10 #Javascript
jquery获取子节点和父节点的示例代码
Sep 10 #Javascript
解决Jquery load()加载GB2312页面时出现乱码的两种方案
Sep 10 #Javascript
解决css和js的{}与smarty定界符冲突问题的两种方法
Sep 10 #Javascript
枚举的实现求得1-1000所有出现1的数字并计算出现1的个数
Sep 10 #Javascript
You might like
《超神学院》霸气归来, 天使彦上演维多利亚的秘密
2020/03/02 国漫
2020最新CPU的性能排名
2020/04/02 数码科技
PHP+MYSQL开发工具及资源收藏
2007/01/02 PHP
linux命令之调试工具strace的深入分析
2013/06/03 PHP
PHP模拟http请求的方法详解
2016/11/09 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
2017/04/25 PHP
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
c#和Javascript操作同一json对象的实现代码
2012/01/17 Javascript
12款经典的白富美型—jquery图片轮播插件—前端开发必备
2013/01/08 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
JS全局变量和局部变量最新解析
2016/06/24 Javascript
jquery基本选择器匹配多个元素的实现方法
2016/09/05 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
Vue.js 2.0 和 React、Augular等其他前端框架大比拼
2016/10/08 Javascript
微信小程序 向左滑动删除功能的实现
2017/03/10 Javascript
jQuery遮罩层实例讲解
2017/05/11 jQuery
vue+axios实现登录拦截的实例代码
2017/05/22 Javascript
浅谈Webpack4 Tree Shaking 终极优化指南
2019/11/18 Javascript
[46:38]完美世界DOTA2联赛PWL S2 Magma vs PXG 第三场 11.28
2020/12/02 DOTA
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
2018/09/14 Python
Python爬虫工具requests-html使用解析
2020/04/29 Python
python switch 实现多分支选择功能
2020/12/21 Python
html5使用canvas实现图片下载功能的示例代码
2017/08/26 HTML / CSS
html5拖拽应用记录及注意点
2020/05/27 HTML / CSS
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
快递员岗位职责
2014/09/12 职场文书
幼儿园教师师德师风承诺书
2015/04/28 职场文书
中国梦党课学习心得体会
2016/01/05 职场文书
高二化学教学反思
2016/02/22 职场文书
基于CSS3画一个iPhone
2021/04/21 HTML / CSS
Go语言带缓冲的通道实现
2021/04/26 Golang
MySQL系列之八 MySQL服务器变量
2021/07/02 MySQL
MySQL约束(创建表时的各种条件说明)
2022/06/21 MySQL