美文网首页
jquery无缝滚动

jquery无缝滚动

作者: 喵呜Yuri | 来源:发表于2018-03-02 15:47 被阅读31次
    image.png

    html部分

    <div class="ct">
        <ul class="img-ct">
            <li><a href="#"><div>
                <div class="img"><img src="images/1.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/2.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/3.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/4.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/5.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
            </div></a></li>
    
            <li><a href="#"><div>
                <div class="img"><img src="images/5.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/6.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/7.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/8.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
                <div class="img"><img src="images/7.jpg" alt=""><div class="text"><p>入住/退房日期</p><span>2018-01-12</span><b>More</b></div></div>
            </div></a></li>
    
        </ul>
        <a class = 'pre  arrow' href="#"><</a>
        <a class = 'next arrow' href="#">></a>
    
    </div>
    

    css部分

     html,body,ul,li{
                padding:0;
                margin:0;
            }
            a{
                text-decoration:none;
            }
            li{
                list-style:none;
            }
            .ct{
                margin: 10px auto;
                width:1258px;
                height:352px;
                position:relative;
                overflow:hidden;
            }
    
            .img-ct{
                position:absolute;
    
            }
            .img-ct:after{
                clear:both;
                content:'';
                display:block;
            }
            .img-ct li{
                float:left;
                width:1258px;
                height:352px;
            }
            .img-ct img{
                width:222px;
                height:175px;
            }
            .img-ct div.img{
                float: left;
                width:222px;
                height:350px;
                box-shadow: 0 0 8px #aaa;
                margin-right: 30px;
                margin-left: 5px;
            }
            .img-ct div.text>p{
                margin: 10px;
                color: #000;
                font: 1rem a;
            }
            .img-ct div.text>span{
                display: block;
                margin: 10px;
                color:#999;
                font-size: .8rem;
            }
            .img-ct div.text>b{
                width: 60px;
                text-align: center;
                display: inline-block;
                margin: 15px 10px;
                font-weight: 400;
                padding: 5px 15px;
                border: 1px solid #999;
                color:#999;
                font-size: .8rem;
            }
            .img-ct li .img:last-child{
                margin-right: 0px;
            }
            .arrow{
                position:absolute;
                top:50%;
                height:50px;
                width:40px;
                text-align:center;
                line-height:50px;
                font-size:20px;
                margin-top:-20px;
                background-color:#4E443C;
                color:#fff;
                opacity:0.5;
            }
            .arrow:hover{
                opacity:1;
            }
            .pre{
                left:0px;
            }
            .next{
                right:0px;
            }
            .nav li{
                display:inline-block;
                width:20px;
                height:5px;
                border-radius:2px;
                background-color:#fff;
                cursor: pointer;
            }
    

    js部分

     var $ct=$('.img-ct'),
            $items=$ct.children(),
            $pre=$('.pre'),
            $next=$('.next'),
            imgCount=$items.size(),
            imgWidth=$items.width();
    
            $ct.append($items.first().clone());
            $ct.prepend($items.last().clone());
            var newCount=$ct.children().size();
            $ct.css({left:0-imgWidth,width:newCount*imgWidth});
            $next.click(function(){
            playnext();
    
        })
        $pre.click(function(){
            playpre();
        })
        var curidx =0;
        var mov = 1;
        var lock=false;
    
        function playnext(){
            $ct.animate({left:'-='+mov*imgWidth},function(){
                curidx+=mov;
                if(curidx===imgCount){
                    $ct.css({left:0-imgWidth});
                    curidx=0;
                }
            })
        }
    
        function playpre(){
            $ct.animate({left:'+='+mov*imgWidth},function(){
                curidx-=mov;
                if(curidx===(-1)){
                    $ct.css({left:0-imgWidth*imgCount});
                    curidx=3;
                }
            })
        }
        var timer = setInterval('playnext()',2000);
    
        $('.ct').hover(function () {
            clearInterval(timer);
        },function () {
            timer = setInterval('playnext()',2000);
        });
    

    相关文章

      网友评论

          本文标题:jquery无缝滚动

          本文链接:https://www.haomeiwen.com/subject/xnmaxftx.html