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 相关文章推荐
关于Blog顶部的滚动导航条代码
Sep 25 Javascript
js左右弹性滚动对联广告代码分享
Feb 19 Javascript
禁用Enter键表单自动提交实现代码
May 22 Javascript
jQuery中 attr() 方法使用小结
May 03 Javascript
JavaScript 七大技巧(二)
Dec 13 Javascript
快速获取/设置iframe内对象元素的几种js实现方法
May 20 Javascript
AngularJS  双向数据绑定详解简单实例
Oct 20 Javascript
JavaScript中闭包的详解
Apr 01 Javascript
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
Aug 29 Javascript
浅谈webpack devtool里的7种SourceMap模式
Jan 14 Javascript
JavaScript修改注册表实例代码
Jan 05 Javascript
Vue 实现v-for循环的时候更改 class的样式名称
Jul 17 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
一些PHP写的小东西
2006/12/06 PHP
PHP伪静态页面函数附使用方法
2008/06/20 PHP
五款常用mysql slow log分析工具的比较分析
2011/05/22 PHP
php截取指定2个字符之间字符串的方法
2015/04/15 PHP
PHP模拟http请求的方法详解
2016/11/09 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
超轻量级的基于jquery的三级展开列表
2011/04/26 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
js渐变显示渐变消失示例代码
2013/08/01 Javascript
Javascript 修改String 对象 增加去除空格功能(示例代码)
2013/11/30 Javascript
jquery获取所有选中的checkbox实现代码
2016/05/26 Javascript
浅谈js中StringBuffer类的实现方法及使用
2016/09/02 Javascript
vue日期组件 支持vue1.0和2.0
2017/01/09 Javascript
Vue.js实现简单动态数据处理
2017/02/13 Javascript
vue在使用ECharts时的异步更新和数据加载详解
2017/11/22 Javascript
vuex实现数据状态持久化
2019/11/11 Javascript
[02:11]2014DOTA2 TI专访VG战队Fenrir:队伍气氛良好
2014/07/11 DOTA
Python基于sftp及rsa密匙实现远程拷贝文件的方法
2016/09/21 Python
Win10下Python环境搭建与配置教程
2016/11/18 Python
python os.path模块常用方法实例详解
2018/09/16 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
2019/05/28 Python
详解程序意外中断自动重启shell脚本(以Python为例)
2019/07/26 Python
Django shell调试models输出的SQL语句方法
2019/08/29 Python
python列表插入append(), extend(), insert()用法详解
2019/09/14 Python
基于python实现MQTT发布订阅过程原理解析
2020/07/27 Python
利用python制作拼图小游戏的全过程
2020/12/04 Python
美国知名的女性服饰品牌:LOFT(洛芙特)
2016/08/05 全球购物
shell变量的作用空间是什么
2013/08/17 面试题
爱岗敬业演讲稿范文
2014/01/14 职场文书
餐饮管理自我介绍信
2014/01/15 职场文书
2014年大学生自我评价
2014/01/19 职场文书
第一节英语课开场白
2015/06/01 职场文书
余世维讲座观后感
2015/06/11 职场文书
利用Matlab绘制各类特殊图形的实例代码
2021/07/16 Python
vue实现拖拽交换位置
2022/04/07 Vue.js
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python