• 第三十二节 JavaScript无缝滚动


    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
    
            .list_con{
                width: 1000px;
                height: 200px;
                border: 1px solid #000;
                margin: 10px auto 0;
                background-color: #f0f0f0;
                position: relative;
                overflow: hidden;
            }
    
            .list_con ul{
                list-style: none;
                width: 2000px;
                height: 200px;
                position: absolute;
                left: 0;
                top: 0;
            }
    
            .list_con li{
                width: 180px;
                height: 180px;
                float: left;
                margin: 10px;
            }
    
            .btns_con{
                width: 1000px;
                height: 30px;
                margin: 50px auto 0;
                position: relative;
            }
    
            .left,.right{
                width: 30px;
                height: 30px;
                background-color: gold;
                position: absolute;
                left: -40px;
                top: 124px;
                font-size: 30px;
                line-height: 30px;
                color: #000;
                font-family: 'Arial';
                text-align: center;
                border-radius: 15px;
                cursor: pointer;
                opacity: 0.5;
            }
    
            .right{
                left: 1010px;
                top: 124px;
            }
        </style>
        <script type="text/javascript">
            window.onload = function(){
                var oDiv = document.getElementById('slide')
                var oUl = document.getElementsByTagName('ul')[0];
                var oBtn01 = document.getElementById('btn01');
                var oBtn02 = document.getElementById('btn02');
    
                oUl.innerHTML += oUl.innerHTML;
                // 再copy一份li元素,总共变成10个li元素
                var iLeft = 0;
                var iSpeed = 2;
                var iNowspeed = 0;
                function moving(){
                    iLeft += iSpeed;
                    // 当向左拉动完10个li时,瞬间将left拉到第五个图片结尾,以便无缝继续滚动
                    if(iLeft<-1000){
                        iLeft = 0;
                    }
    
                    if(iLeft>0){
                        iLeft = -1000;
                    }
                    oUl.style.left = iLeft + 'px';
                }
                var timer = setInterval(moving,30);
                oBtn01.onclick = function(){
                    iSpeed = -2;
                }
                oBtn02.onclick = function(){
                    iSpeed = 2;
                }
    
    
                // 鼠标停留事件onmouseover
                oDiv.onmouseover = function(){
                    iNowspeed = iSpeed;
                    iSpeed = 0;
                }
    
                // 鼠标离开事件onmouseover
                oDiv.onmouseout = function(){
                    iSpeed = iNowspeed;
                }    
            }
        </script>
    </head>
    <body>
        <div class="btns_con">
            <div class="left" id="btn01">&lt;</div>
            <div class="right" id='btn02'>&gt;</div>
        </div>
    
        <div class="list_con" id="slide">
            <ul>
                <li><a href="#"><img src="images/goods001.jpg" alt="商品图片"></a></li>
                <li><a href="#"><img src="images/goods002.jpg" alt="商品图片"></a></li>
                <li><a href="#"><img src="images/goods003.jpg" alt="商品图片"></a></li>
                <li><a href="#"><img src="images/goods004.jpg" alt="商品图片"></a></li>
                <li><a href="#"><img src="images/goods005.jpg" alt="商品图片"></a></li>
            </ul>
        </div>
    </body>
    </html>
  • 相关阅读:
    shell学习(11)- seq
    bash快捷键光标移动到行首行尾等
    shell学习(10)- if的使用
    Python 执行 Shell 命令
    查看 jar 包加载顺序
    Linux 中的 sudoers
    Ubuntu 开机启动程序
    指定 Docker 和 K8S 的命令以及用户
    Spark on K8S(Standalone)
    Spark on K8S (Kubernetes Native)
  • 原文地址:https://www.cnblogs.com/kogmaw/p/12493051.html
Copyright © 2020-2023  润新知