日期:2014-05-16  浏览次数:20393 次

JS 求助,滚动新闻总是出现乱滚的现象
这样的 , 自己做了个站 .
首页有很多滚动内容
JS 地址是 : http://www.zkylm.com/app/view/default/js/index_scroll.class.js
有兴趣就看下首页效果 , 就是那个最顶部的新闻滚动 , 所有的滚动都是一个程序套出来来的 ( 每 10 秒自动滚一下 ) .
可是 , 总是不自觉地变成 2 下 , 我蛋疼的要命 , JS 文件代码给出了 , 请高手明示算法哪里有问题或者是给个新思路 , 感谢大虾 .

------解决方案--------------------
 scroll_to_num:function(number){
      //如果是r_obj或者l_obj事件调用的,就clearTimeout(this.id);
      var w = -(number-1)*345;
      this.scroll_obj.animate({'left': w},600);

出现的问题的原因可能是这样的,当快到10秒的时候,你触发了一下r_obj的事件,调用了scroll_to_num,而此时定时器也开始执行了,所以出现你所说的问题。

    
------解决方案--------------------
这样写
this.fid = setTimeout(function(){current.AutoScroll()},index_scroll_time*1000);

this.scroll_obj.parent().parent().hover(
        function(){
          current.SetPointer(true);
          //清除第一个定时器
          clearTimeout(current.fid);
          clearTimeout(current.id);
        }