Jquery图片滚动与幻灯片的实例代码


Posted in Javascript onApril 08, 2013

1、图片滚动

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript">
 $(document).ready(function () {
    Xhun(".a");      //----------------------只需要修改   ”.a"  (就是最大的div的class值这里就行---------------------
});
function Xhun(_box) {
    var box_frame = _box + " div ul";
    var box_div = _box + " div";
    $(_box).find("ul").wrap("<div></div>");    //添加一个div,来控制偏移量
    $(box_div).append($(box_frame).clone());   //克隆一个ul并添加到div中,为了实现无缝循环
 $(box_div).append($(box_frame).clone());   //克隆一个ul并添加到div中,为了实现无缝循环
    var li_size = $(_box).find("li").size();   //获取li的个数
    var li_width = $(box_frame).children("li").width();  //获取li的宽度
    var box_div_width = $(box_div).width(li_size * li_width * 5);  //设置div的宽度
    $(box_frame).css("float", "left");
 
    var dd = setInterval(gd, 30);
    function gd() {
        var position = $(_box).scrollLeft();     //scrollLeft()是获取对象的水平偏移量
        $(_box).scrollLeft(position + 1);
        if (position >= $(box_frame).width()) { $(_box).scrollLeft(0); }  //判断位移是否大于ul的总长度
    }
    $(_box).mouseleave(function () {
        dd = setInterval(gd, 30);
    }).mouseenter(function () {
        clearInterval(dd);
    });
} 
    </script>
    <style type="text/css">
        * { margin: 0; padding: 0; }
        ul { list-style: none; }
        li { float: left; margin-left: 10px; width: 100px; }
        img { width: 100px; height: 100px; }
        .a { width: 400px; margin: 0 auto; overflow: hidden; height: 100px; }
    </style>
</head>
<body>
    <div class="a">
        <ul>
            <li><a href="#">
                <img src="Wife1.jpg" alt="img" title="img" /></a></li>
            <li><a href="#">
                <img src="Wife2.jpg" alt="img" title="img" /></a></li>
        </ul>
    </div>
</body>
</html>

2、幻灯片

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>幻灯片切换</title>
    <script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript">
$(document).ready(function () {
    slide(".frame");      //----------------------只需要修改   ”.frame"  (就是最大的div的class值这里就行---------------------
});
 
function slide(cls) {
 $(cls).find("ul").wrap("<div></div>");
 $(cls+" div").attr("class","iframe");
    var li = $(cls).find("li").size();//统计多少张图片
    var li_width = $(cls).find("li").width(); //获取li的宽度
    $(cls + " div").children("ul").width(li_width * li);//设置宽度,使图片排成一排
    var s = "<ul class='button'>";//生成li的按钮
    for (var i = 0; i < li; i++) {
        s += "<li>" + (i + 1) + "</li>";
    }
    s += "</ul>";
    $(s).appendTo($(cls));//生成按钮结束,并添加到最大div里面
    var _i = 0;//当前的编号
    $(cls).find(".button li").each(function (i) {
        //生成按钮点击事件
        $(this).click(function () {
            _i = i;
            $(this).attr("class", "on").siblings().removeAttr("class");//设置class,没必要再多加一个off
            $(cls + " div").animate({ scrollLeft: i * li_width }, "slow");//图片移动
        });
    }).eq(0).click();
    function tt() {//定时器函数
        _i++;
        _i = _i % li;
        $(cls).find(".button li").eq(_i).click();//自动点击切换图片
    }
    var t = setInterval(tt, 3000);//定时器
    $(cls).hover(function () {
        clearInterval(t);//鼠标经过清除定时器,离开时又触发
    }, function () {
        t = setInterval(tt, 3000);
    })
}
    </script>
    <style type="text/css">
        * { margin: 0; padding: 0; }
        li, ul { list-style: none; margin: 0; padding: 0; }
        .frame { width: 280px; height: 280px; position: relative; margin: 0 auto; }  /*这里需要修改最大div的宽度和高度*/
        .iframe { overflow: hidden; width: 280px; height: 280px; }                  /*这里需要修改该div的宽度和高度*/
            .iframe ul li { float: left; width: 280px; }                            /*这里需要修改li的宽度*/
        .button { position: absolute; bottom: 15px; right: 15px; z-index: 300; }
            .button li { float: left; cursor: pointer; width: 17px; height: 17px; line-height: 17px; text-align: center; margin-right: 5px; border-radius: 7px; color: #fff; background: #000; }
            .button .on { color: #000; background: #fff; }
    </style>
</head>
<body>
 <!-- 这里要按照这样的格式来写 -->
    <div class="frame">
            <ul>
                <li><a href="#">
                    <img src="Wife1.jpg" width="280" height="280" alt="img" /></a></li>
                <li><a href="#">
                    <img src="Wife2.jpg" width="280" height="280" alt="img" /></a></li>
                <li><a href="#">
                    <img src="Wife3.jpg" width="280" height="280" alt="img" /></a></li>
                <li><a href="#">
                    <img src="Wife4.jpg" width="280" height="280" alt="img" /></a></li>
                <li><a href="#">
                    <img src="Wife5.jpg" width="280" height="280" alt="img" /></a></li>
            </ul>
    </div>
</body>
</html>
Javascript 相关文章推荐
基于jQuery实现的Ajax 验证用户名是否存在的实现代码
Apr 06 Javascript
javascript 基础篇2 数据类型,语句,函数
Mar 14 Javascript
js克隆对象、数组的常用方法介绍
Sep 26 Javascript
在JavaScript的jQuery库中操作AJAX的方法讲解
Aug 15 Javascript
js注册时输入合法性验证方法
Oct 21 Javascript
node 利用进程通信实现Cluster共享内存
Oct 27 Javascript
JavaScript数据结构之双向链表定义与使用方法示例
Oct 27 Javascript
在vue中添加Echarts图表的基本使用教程
Nov 22 Javascript
在JS循环中使用async/await的方法
Oct 12 Javascript
解决layui的input独占一行的问题
Sep 10 Javascript
Vue的自定义组件不能使用click方法的解决
Jul 28 Javascript
Vue通过Blob对象实现导出Excel功能示例代码
Jul 31 Javascript
Js动态添加复选框Checkbox的实例方法
Apr 08 #Javascript
JS解决url传值出现中文乱码的另类办法
Apr 08 #Javascript
JS继承--原型链继承和类式继承
Apr 08 #Javascript
原生js实现shift/ctrl/alt按键的获取
Apr 08 #Javascript
原生js实现跨浏览器获取鼠标按键的值
Apr 08 #Javascript
纯js实现瀑布流展现照片(自动适应窗口大小)
Apr 08 #Javascript
javascript中常用编程知识
Apr 08 #Javascript
You might like
php递归创建和删除文件夹的代码小结
2012/04/13 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
ThinkPHP之A方法实例讲解
2014/06/20 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
2017/09/27 PHP
php 数据结构之链表队列
2017/10/17 PHP
Yii框架日志记录Logging操作示例
2018/07/12 PHP
juqery 学习之三 选择器 子元素与表单
2010/11/25 Javascript
jQuery 1.5最新版本的改进细节分析
2011/01/19 Javascript
浅析return false的正确使用
2013/11/04 Javascript
ECMAScript5中的对象存取器属性:getter和setter介绍
2014/12/08 Javascript
jQuery团购倒计时特效实现方法
2015/05/07 Javascript
原生js实现ajax方法(超简单)
2016/09/20 Javascript
angularjs select 赋值 ng-options配置方法
2018/02/28 Javascript
Vuex 在Vue 组件中获得Vuex 状态state的方法
2018/08/27 Javascript
npm配置国内镜像资源+淘宝镜像的方法
2018/09/07 Javascript
jQuery实现数字华容道小游戏(实例代码)
2020/01/16 jQuery
深入浅析vue全局环境变量和模式
2020/04/28 Javascript
electron踩坑之dialog中的callback解决
2020/10/06 Javascript
python利用tkinter实现屏保
2019/07/30 Python
keras slice layer 层实现方式
2020/06/11 Python
解决使用Pandas 读取超过65536行的Excel文件问题
2020/11/10 Python
使用bandit对目标python代码进行安全函数扫描的案例分析
2021/01/27 Python
CSS3 clip-path 用法介绍详解
2018/03/01 HTML / CSS
CSS3绘制六边形的简单实现
2016/08/25 HTML / CSS
美国存储和组织商店:The Container Store
2017/08/16 全球购物
Deux par Deux官方网站:设计师童装
2020/01/03 全球购物
Linux内核产生并发的原因
2012/07/13 面试题
工程造价管理专业大专生求职信
2013/10/06 职场文书
学习心得体会
2014/01/01 职场文书
同事打架检讨书
2014/02/04 职场文书
《陋室铭》教学反思
2014/02/26 职场文书
学校社会实践活动总结
2014/07/03 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
二十年同学聚会感言
2015/07/30 职场文书
酒桌上的祝酒词
2015/08/12 职场文书
出纳2015年度工作总结范文
2015/10/14 职场文书