下面是我的代码<div id="exhib_1" class="border">
    <div id="rolllink" style="overflow: hidden; padding-left: 10px; width: 250px; height: 130px">
        <div id="rolllink1">
            <asp:Repeater ID="Repeater" runat="server" OnItemDataBound="Repeater_ItemDataBound">
                <ItemTemplate>
                    <table cellspacing="0" cellpadding="0" border="0" width="100%">
                        <tr>
                            <td style="width: 12px; padding-right: 5px; vertical-align: middle">
                                <asp:Image ID="Image2" ImageUrl="images/birthday.gif" runat="server" alt="" />
                            </td>
                            <td style="color: black; width: 50px">
                                <%#Eval("TRUENAME").ToString()%>
                            </td>
                            <td style="color: black;">
                                <%#Eval("birth").ToString()%>
                            </td>
                        </tr>
                    </table>
                </ItemTemplate>
            </asp:Repeater>
        </div>
        <div id="rolllink2">
        </div>
    </div>    <script type="text/javascript">            var rollspeed = 40
            rolllink2.innerHTML = rolllink1.innerHTML
            function Marquee() {
     
                if (rolllink2.offsetTop - rolllink.scrollTop <= 0)
                    rolllink.scrollTop -= rolllink1.offsetHeight
                else {
                    rolllink.scrollTop++
                }
            }
            var MyMar = setInterval(Marquee, rollspeed)
            rolllink.onmouseover = function() { clearInterval(MyMar) }
            rolllink.onmouseout = function() {
                MyMar = setInterval(Marquee, rollspeed)
            }
            
    </script></div>
我的疑问是 这段滚动div的js  只是在当绑定的数据 大于外层div的时候 才会滚动 因为我这里的数据不固定 有时多 有时少    所以当少的情况下  会出现这种情况:
1、首先 执行 rolllink2.innerHTML = rolllink1.innerHTML这个时候  div rolllink1  和 div  rolllink2 都有值,滚动的时候 将 这两个div的数据滚动完了 就不滚动了   
我想要的结果是  不管数据多少 就一直循环滚动   怎么搞?各位帮帮看看!

解决方案 »

  1.   

      var _width= jQuery(".index_bsfw > ul").width();
      if(_width>jQuery(".index_bsfw").width()){
     var _html=jQuery(".index_bsfw").html();
     jQuery(".index_bsfw").append(_html);
     _bsfw=setInterval("bsfw_run()",speed);
     jQuery(".index_bsfw").mouseover(function(){
      clearInterval(_bsfw);
     });
     jQuery(".index_bsfw").mouseout(function(){
      _bsfw=setInterval("bsfw_run()",speed);
     });
     //bsfw_run();
      }
       function bsfw_run(){
          var _st = parseInt(jQuery(".index_bsfw").scrollLeft());
      var _po=jQuery(".index_bsfw ul").eq(1).position().left - jQuery(".index_bsfw").position().left;
      if(_po<=5){
       jQuery(".index_bsfw").scrollLeft(0);
      }
      else{
       jQuery(".index_bsfw").scrollLeft(_st + 1);
      }
      //alert(jQuery(".index_bsfw").scrollLeft());
       }参考这个
          var _st = parseInt(jQuery(".index_bsfw").scrollLeft());
      var _po=jQuery(".index_bsfw ul").eq(1).position().left - jQuery(".index_bsfw").position().left;用第二个ul的位置和父层位置来做判断