JS 无缝滚动 走马灯

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
* { margin:0; padding:0; }
#demo { overflow: hidden; /* 必须加上 hideen 才能滚动*/ width: 840px; margin:50px auto; }
#demo img {    border: 1px solid red; margin-right: 20px; }
#indemo { float: left; width: 800%; border:1px dashed #000; }
#demo1 { float: left; }
#demo2 { float: left; }
</style>
</head>
<body>
<div id="demo">
    <div id="indemo">
        <div id="demo1"> 
            <a href="###"><img src="1.jpg" width="100" height="80" border="0" /></a> 
            <a href="###"><img src="1.jpg" width="100" height="80" border="0" /></a> 
            <a href="###"><img src="1.jpg" width="100" height="80" border="0" /></a> 
            <a href="###"><img src="1.jpg" width="100" height="80" border="0" /></a> 
            <a href="###"><img src="1.jpg" width="100" height="80" border="0" /></a> 
            <a href="###"><img src="1.jpg" width="100" height="80" border="0" /></a> 
        </div>
        <div id="demo2"></div>
    </div>
</div>

<script>
    var speed = 15;
    var tab = document.getElementById("demo");
    var tab1 = document.getElementById("demo1");
    var tab2 = document.getElementById("demo2");
    
    tab2.innerHTML = tab1.innerHTML;
    function Marquee() {
        if (tab2.offsetWidth - tab.scrollLeft <= 0)
            tab.scrollLeft -= tab1.offsetWidth;
        else {
            tab.scrollLeft++;
        }
    }
    var MyMar = setInterval(Marquee, speed);
    tab.onmouseover = function () { clearInterval(MyMar) };
    tab.onmouseout = function () { MyMar = setInterval(Marquee, speed) };

</script>

</body>
</html>

 obj.offsetWidth 指 obj 控件自身的绝对宽度,不包括因 overflow 而未显示的部分,也就是其实际占据的宽度,整型,单位像素。

 scrollLeft就是指横向滚动条滚动后,左边不可见的那部分的宽度

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。