jquery实现图片自动轮换效果(兼容IE6,IE7)

总是用别人的例子,出错了不知道怎么改,就自己亲自写了一个,有注释,通俗易懂,希望能跟大家一起沟通交流

目录结构如下:

源代码下载地址:http://pan.baidu.com/s/1zkY5i    (下载即可打开)

IE7下效果图如下:

源码下载地址:http://pan.baidu.com/s/1EcqJO   (需要复制网址打开)

domo.html代码如下:

.................................................................................................................................................................................................................

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="css/1.css" />
<title>图片轮播</title>
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript">
    /*初始化是向右转动*/
    var dir = "right";
    var timer;
    var speed = 1000;

    function direct(old_dir) {
        dir = old_dir;
        if (dir == "right") {
            /*清除计时器*/
            window.clearInterval(timer);
            /*计时器*/
            timer = window.setInterval("right()", speed);
        }
        if (dir == "left") {
            /*清除计时器*/
            window.clearInterval(timer);
            /*计时器*/
            timer = window.setInterval("left()", speed);
        }
    }

    /*向左滚动*/
    function left() {
        var left = $("#pic").css("left");
        var left1 = parseInt(left) + 230;
        if (left1 > 0) {
            left1 = -1840;
        }
        k = left1 / -230;
        $("#pic").css("left", left1);
        $("#banner_btn li").siblings().removeClass("current");
        $("#banner_btn li").eq(k).addClass("current");
    }

    /*向右滚动*/
    function right() {
        var left = $("#pic").css("left");
        var left1 = parseInt(left) - 230;
        if (left1 < -1840) {
            left1 = 0;
        }
        k = left1 / -230;
        $("#pic").css("left", left1);
        $("#banner_btn li").siblings().removeClass("current");
        $("#banner_btn li").eq(k).addClass("current");
    }

    /*页面初始化执行*/
    $(function() {
        /*自动滚动*/
        direct(dir);
        /*鼠标移到数字上切换图片*/
        $("#banner_btn li").hover(function() {
            window.clearInterval(timer);
            /*跟自己同级别的所有节点*/
            $(this).siblings().removeClass("current");
            $(this).addClass("current");
            var i = $(this).index();
            var j = -230 * parseInt(i);
            $("#pic").css("left", j);
        });
        /*鼠标离开数字时继续滚动*/
        $("#banner_btn li").mouseleave(function() {
            direct(dir);
        });
        /*鼠标移到图片上停止滚动*/
        $(".pic li img").hover(function() {
            window.clearInterval(timer);
        });
        /*鼠标移开继续滚动*/
        $(".pic li img").mouseleave(function() {
            direct(dir);
        });
    });
</script>
</head>
<body>
    <div class="a">
        <pre class="pre" onClick="direct('left');">pre</pre>
        <pre class="next" onClick="direct('right');">next</pre>
        <div class="pic1">
            <ul class="pic" id="pic">
                <li><img src="images/13691345082.jpg"></li>
                <li><img src="images/1353485118249.jpg"></li>
                <li><img src="images/1355742153253.jpg"></li>
                <li><img src="images/1363943359756.jpg"></li>
                <li><img src="images/1364279216643.jpg"></li>
                <li><img src="images/1366770146652.jpg"></li>
                <li><img src="images/1367138383721.jpg"></li>
                <li><img src="images/1368518565890.jpg"></li>
                <li><img src="images/1372038703930.jpg"></li>
            </ul>
        </div>
        <ul id="banner_btn" class="points">
            <!-- creatBtnli() -->
            <li num="0" class="current">1</li>
            <li num="1" class="">2</li>
            <li num="2" class="">3</li>
            <li num="3" class="">4</li>
            <li num="4" class="">5</li>
            <li num="5" class="">6</li>
            <li num="6" class="">7</li>
            <li num="7" class="">8</li>
            <li num="8" class="">9</li>
            <!-- <li num="9" class="">9</li> -->
        </ul>
    </div>

</body>
</html>


............................................................................................................................................

css代码如下:

............................................................................................................................................

body{
    margin:0;
    padding:0;
}
ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
.a {
    width: 800px;
    margin: 0 auto;
    position: relative;
}
.a .pre{
    background: url("images/20120606wwwzzjsnet_40.png") no-repeat;
    text-indent: -999px;
    width: 39px;
    height: 81px;
    position: absolute;
    left: 150px;
    top:150px;
    cursor: pointer;
}
.a .next{
    background: url("images/20120606wwwzzjsnet_40.png") no-repeat 100%;
    text-indent: -999px;
    width: 39px;
    height: 81px;
    position: absolute;
    right: 150px;
    top:150px;
    cursor: pointer;
}
.a .pic1{
    width: 230px;
    height: 350px;
    overflow: hidden;
    margin: 0 auto;
    position:relative;

top:0;

left:0;
}
.a .pic{
    left:0px;
    width: 10000px;
    position: relative;
}
.a .pic li{
    float: left;
    
}
.a .points{
    margin: 0 auto;
    width: 270px;
    height:30px;
}
.a .points li{
    float: left;
    padding: 1px 7px;
    border: 1px solid;
    margin: 3px;
    cursor: pointer;
}
.a .points .current{
    background-color: #DB5C49;
}


-----------------------------------------------------------------------------------------------------------------

源代码下载地址:http://pan.baidu.com/s/1zkY5i    (下载即可打开) 欢迎大家共同沟通学习

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是一个简单的使用jquery实现图片轮播效果的例子: HTML代码: ```html <div class="slider"> <img src="image1.jpg" alt="Image 1"> <img src="image2.jpg" alt="Image 2"> <img src="image3.jpg" alt="Image 3"> </div> ``` CSS代码: ```css .slider { position: relative; width: 500px; height: 300px; overflow: hidden; } .slider img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1s ease-in-out; } .slider img.active { opacity: 1; } ``` jQuery代码: ```javascript $(document).ready(function() { // 默认显示第一张图片 $('.slider img:first').addClass('active'); // 自动轮播 setInterval(function() { var $active = $('.slider img.active'); var $next = $active.next(); if (!$next.length) { $next = $('.slider img:first'); } $active.removeClass('active'); $next.addClass('active'); }, 2000); }); ``` 解释: 首先,我们将所有图片放在一个 div 容器中,并设置容器的宽度和高度。然后,我们使用 CSS 将所有图片设置为绝对定位,并设置它们的透明度为 0。在当前活动的图片上添加一个“active”类,以便我们可以在 jQuery 中轻松地找到它。 在 jQuery 中,我们为轮播设置了一个定时器,每隔 2 秒钟就会执行一次。在每次执行时,我们找到当前活动的图片并将其“active”类删除。然后,我们找到下一张图片并将其添加到“active”类中。如果我们到达了最后一张图片,我们将下一张图片设置为第一张图片。 最后,我们在文档准备就绪时设置第一张图片为活动图片,并开始自动轮播。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值