zoukankan      html  css  js  c++  java
  • 左右按钮可点击轮播(不是无缝滚动)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>轮播左右</title>
        <script src="js/jquery-1.7.1.js"></script>
        <style>
            .list{
                 250px;
                height: 47px;
                overflow: hidden;
                border: 1px solid #d74147;
                position: relative;
            }
            .list ul{
                padding-top: 0 !important;
                padding-left: 0 !important;
                margin-top: 0 !important;
                position: absolute;
                top: 0;
                 500px;
            }
            .list ul li{
                 50px;
                line-height: 30px;
                list-style: none;
                text-align: center;
                float: left;
            }
        </style>
        <script type="text/javascript">
            $(function(){
                //class为lis给一个变量名叫$ul
                var $ul = $('.lis');
                //在ul下查找所有的li,获取li的宽度
                var $liWidth = $ul.find('li').css('width');
                //
                var direction = 'left';
                //按钮class为left的点击事件,并且direction=left,下面反之
                $('.left').on('click',function(){
                    direction = 'left';
                });
                $('.right').on('click',function(){
                    direction = 'right';
                });
                //给定时器setInterval函数申明一个变量为leftInterval
                var leftInterval = setInterval(function(){
                    //为什么放这边(如果放在定时器外面,只能往一个方向【left】动,因为定时器在IF里面)
                    //如果direction=left
                    if(direction == 'left'){
                        //查找ul下得li的第一个li,并且声明变量为$liFirst
                        var $liFirst = $('.lis').find('li').first();
                        //ul向左运动的长度为li的宽度,速度是slow
                        $ul.animate({left: '-' + $liWidth}, 'slow', function(){
                            //移动好后,每次都把第一个的插入到ul得最后
                            $liFirst.appendTo($ul);
                            //因为每次第一个往左移动,后面的第一个再往左移动,如果不把他
                            $ul.css('left', 0);
                        });
                    }
                    else{
                        var $liLast = $('.lis').find('li').last(); 
                        $liLast.prependTo($ul);
                        $ul.css('left', '-' + $liWidth);
                        $ul.animate({left: 0}, 'slow');
                    }
                }, 1000);
    //            clearInterval(leftInterval());
    
                //1. 动画 left 负值
                //2. 头移到尾
                //3. left 从负值设为0
    
                //1. left 从0设为负值
                //2. 尾移到投
                //3. 动画 left 0
    
    
    
    
    
            });
        </script>
    </head>
    <body>
    <div class="list">
        <ul class="lis">
            <li>11111</li>
            <li>22222</li>
            <li>33333</li>
            <li>44444</li>
            <li>55555</li>
    
            <li>11111</li>
            <li>22222</li>
            <li>33333</li>
            <li>44444</li>
            <li>55555</li>
        </ul>
    </div>
    <input type="button" value="left" class="left" />
    <input type="button" value="right" class="right" />
    </body>
    </html>
    

      

  • 相关阅读:
    IOS、java支持DES加密
    多线程——@synchronized(object)
    LSM树存储模型
    System.setProperty()
    Filter及FilterChain的使用具体解释
    Java有用经验总结--Swing篇
    POJ3342——Party at Hali-Bula
    Hadoop-2.4.1学习之Writable及事实上现
    OpenCV 编程简单介绍(矩阵/图像/视频的基本读写操作)
    Android中Context具体解释 ---- 你所不知道的Context
  • 原文地址:https://www.cnblogs.com/shenq/p/4924694.html
Copyright © 2011-2022 走看看