zoukankan      html  css  js  c++  java
  • 闲扯 Javascript 04 滚动条

    物体运动基础
    让Div移动起来
    offsetLeft的作用
    用定时器让物体连续移动
    效果原理
    让ul一直向左移动
    复制li
    innerHTML和+=
    修改ul的width
    滚动过界后,重设位置
    判断过界
    改变滚动方向
    修改speed
    修改判断条件
    鼠标移入暂停
    移入关闭定时器
    移出重新开启定时器
     1 <style>
     2 *{ margin:0px; padding:0px;}
     3 #div1{ width:712px; height:108px; margin:100px auto; position:relative; background:#F00; overflow:hidden;}
     4 #div1 ul{ position:absolute; left:0px; top:0px; }
     5 #div1 ul li{ float:left; list-style:none; width:178px; height:108px;}
     6 </style>
     7 <script>
     8 
     9 window.onload=function ()
    10 {
    11     var oDiv=document.getElementById('div1');
    12     var oUl=oDiv.getElementsByTagName('ul')[0];
    13     var oLi=oDiv.getElementsByTagName('li');
    14     
    15     oUl.innerHTML=oUl.innerHTML+oUl.innerHTML;
    16     oUl.style.width=oLi[0].offsetWidth*oLi.length+'px';
    17     var num=-2;
    18     
    19     function move()
    20     {
    21         if(oUl.offsetLeft<-oUl.offsetWidth/2)
    22         {
    23             oUl.style.left='0';
    24             }
    25             if(oUl.offsetLeft>0)
    26             {
    27                 oUl.style.left=-oUl.offsetWidth/2+'px'; //当oUl.style.left>0 也就是left 到达右边,后面跟着出现红色,此时只需把它的宽度拉到offsetWidth的中段(oUl的宽度)即可
    28                 }
    29         oUl.style.left=oUl.offsetLeft+num+'px';
    30         }
    31     
    32     timer=setInterval( move
    33     ,30)
    34     oDiv.onmouseover=function ()
    35     {
    36         clearInterval(timer);
    37     };
    38     
    39     oDiv.onmouseout=function ()
    40     {
    41         timer=setInterval(move, 30);
    42     };
    43 
    44     document.getElementsByTagName('a')[0].onclick=function ()
    45     {
    46         num=-2;
    47         }
    48         document.getElementsByTagName('a')[1].onclick=function (){ num=2;}
    49     
    50     
    51     
    52     };
    53     
    54 
    55 </script>
    56 </head>
    57 
    58 <body>
    59 <a href="#">向左走</a>
    60 <a href="#">向右走</a>
    61 <div id="div1">
    62   <ul>
    63   
    64   <li> <img src="images/1.jpg"/></li>
    65    <li> <img src="images/2.jpg"/></li>
    66     <li> <img src="images/3.jpg"/></li>
    67       <li> <img src="images/4.jpg"/></li>
    68   
    69   </ul>
    70 </div>
    71 </body>
  • 相关阅读:
    DataTable的一些使用技巧
    Linux下使用Mysql
    【Cocos2d-X开发学习笔记】第28期:游戏中音乐和音效的使用
    HDU 4669 Mutiples on a circle (DP , 统计)
    面试经典-设计包含min函数的栈
    最大熵模型
    这篇文章关于两阶段提交和Paxos讲的很好
    【读书笔记】神经网络与深度学习
    这个对协程的分析不错
    sendfile学习
  • 原文地址:https://www.cnblogs.com/izhiniao/p/3696815.html
Copyright © 2011-2022 走看看