求一段.net 新闻上下滚动的代码,不要marquee的,要无间隔滚动。

解决方案 »

  1.   

    <div class="midtop1">
    <script> 
        var marqueeContent = new Array();   //滚动主题
        marqueeContent[0]='<a href="1.htm"></a>';
       var marqueeInterval = new Array();  //定义一些常用而且要经常用到的变量
        var marqueeId = 0;
        var marqueeDelay = 4000;
        var marqueeHeight = 15;
        function initMarquee() {
            var str = marqueeContent[0];
            document.write('<div id=marqueeBox style="overflow:hidden;height:' + marqueeHeight + 'px" onmouseover="clearInterval(marqueeInterval[0])" onmouseout="marqueeInterval[0]=setInterval(\'startMarquee()\',marqueeDelay)"><div>' + str + '</div></div>');
            marqueeId++;
            marqueeInterval[0] = setInterval("startMarquee()", marqueeDelay);
        }
        function startMarquee() {
            var str = marqueeContent[marqueeId];
            marqueeId++;
            if (marqueeId >= marqueeContent.length) marqueeId = 0;
            if (marqueeBox.childNodes.length == 1) {
                var nextLine = document.createElement('DIV');
                nextLine.innerHTML = str;
                marqueeBox.appendChild(nextLine);
            }
            else {
                marqueeBox.childNodes[0].innerHTML = str;
                marqueeBox.appendChild(marqueeBox.childNodes[0]);
                marqueeBox.scrollTop = 0;
            }
            clearInterval(marqueeInterval[1]);
            marqueeInterval[1] = setInterval("scrollMarquee()", 10);
        }
        function scrollMarquee() {
            marqueeBox.scrollTop++;
            if (marqueeBox.scrollTop % marqueeHeight == marqueeHeight) {
                clearInterval(marqueeInterval[1]);
            }
        }
        initMarquee();
    </script>
     
    </div>