<div id="demo" style="overflow:hidden;"> 
                                        <div id="demo1"> 
                                        <asp:DataList ID="DataList7" runat="server" DataSourceID="SqlDataSource8" Style="border-right: #cccccc 1px solid;
                                            border-top: #cccccc 1px solid; border-left: #cccccc 1px solid; border-bottom: #cccccc 1px solid"
                                            Width="100%">
                                            <ItemTemplate>
                                        <table style="width: 100%">
                                            <tr>
                                                <td>
                                        &nbsp;<asp:Image ID="Image1" runat="server" ImageUrl="~/images/sign1.gif" />
                                        <asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("nid","newsdetail.aspx?id={0}") %>'
                                            Text='<%# Eval("newtitle").ToString().Length > 10? Eval("newtitle").ToString().Substring(0, 10):Eval("newtitle") %>'></asp:HyperLink>
                                                </td>
                                            </tr>
                                            <tr>
                                                <td style="height: 1px">
                                                </td>
                                            </tr>
                                        </table>
                                            </ItemTemplate>
                                        </asp:DataList>
                                         </div> 
                                         <div id="demo2"></div> 
                                         </div> 
                                        </td>
                                </tr>
                            </table>
       <script type="text/javascript"> 
        var speed=30;
        demo2.innerHTML=demo1.innerHTML;//克隆demo1为demo2 
        function Marquee(){ 
        //当滚动至demo1与demo2交界时 
        if(demo2.offsetTop-demo.scrollTop<=0)   
        demo.scrollTop-=demo1.offsetHeight; //demo跳到最顶端 
        else{ 
        demo.scrollTop++;
           } 
           } 
           var MyMar=setInterval(Marquee,speed);//设置定时器 
           //鼠标移上时清除定时器达到滚动停止的目的 
           demo.onmouseover=function() {clearInterval(MyMar);} 
           //鼠标移开时重设定时器 
           demo.onmouseout=function(){MyMar=setInterval(Marquee,speed);} 
    </script>                                 <div id="demo" style="overflow:hidden;"> 
                                        <div id="demo1"> 
                                        <asp:DataList ID="DataList7" runat="server" DataSourceID="SqlDataSource8" Style="border-right: #cccccc 1px solid;
                                            border-top: #cccccc 1px solid; border-left: #cccccc 1px solid; border-bottom: #cccccc 1px solid"
                                            Width="100%">
                                            <ItemTemplate>
                                        <table style="width: 100%">
                                            <tr>
                                                <td>
                                        &nbsp;<asp:Image ID="Image1" runat="server" ImageUrl="~/images/sign1.gif" />
                                        <asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("nid","newsdetail.aspx?id={0}") %>'
                                            Text='<%# Eval("newtitle").ToString().Length > 10? Eval("newtitle").ToString().Substring(0, 10):Eval("newtitle") %>'></asp:HyperLink>
                                                </td>
                                            </tr>
                                            <tr>
                                                <td style="height: 1px">
                                                </td>
                                            </tr>
                                        </table>
                                            </ItemTemplate>
                                        </asp:DataList>
                                         </div> 
                                         <div id="demo2"></div> 
                                         </div> 
                                        </td>
                                </tr>
                            </table>
       <script type="text/javascript"> 
        var speed=30;
        demo2.innerHTML=demo1.innerHTML;//克隆demo1为demo2 
        function Marquee(){ 
        //当滚动至demo1与demo2交界时 
        if(demo2.offsetTop-demo.scrollTop<=0)   
        demo.scrollTop-=demo1.offsetHeight; //demo跳到最顶端 
        else{ 
        demo.scrollTop++;
           } 
           } 
           var MyMar=setInterval(Marquee,speed);//设置定时器 
           //鼠标移上时清除定时器达到滚动停止的目的 
           demo.onmouseover=function() {clearInterval(MyMar);} 
           //鼠标移开时重设定时器 
           demo.onmouseout=function(){MyMar=setInterval(Marquee,speed);} 
    </script>
 

看下这段代码有什么问题,怎么滚动不起来

解决方案 »

  1.   

    滚动
    <div class="midtop1">
    <script> 
        var marqueeContent = new Array();   //滚动主题
        marqueeContent[0]='<a href="/1.htm">1</a>';
    marqueeContent[1]='<a href="/2.htm">2</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>