我下了个图片轮播切换的Jquery例子http://www.cnblogs.com/babyzone2004/archive/2010/08/30/1812682.html我想加一个鼠标放上去能暂停的功能,就加了一些jquery的代码:下面这段代码是当鼠标放到滑动框时暂停和离开时重新自动播放的功能-- $(".slide", $t).hover(
function(){clearInterval(sliderIntervalID);},
function(){
sliderIntervalID = setInterval(function(){
if(active===false) {animate("next",true);}
},o.autoStart);
}
);
但是当下面这段原来的代码里手动前进后退的按钮时间被触发时,上面我加的这段暂停的代码就失效了,好像是改了sliderIntervalID的值后,clearInterval找不到那个id了 $(".next",$t).click(function(){
if(active===false) {
animate("next",true);
if(o.autoStart){
if (o.restart) {autoStart();}
else {clearInterval(sliderIntervalID);}
}
} return false;
});

解决方案 »

  1.   

    上面那个链接错了http://www.cssk8.com/html/cssmb/blue/2011/0621/2744.html高手们给看看,想在这个切换的框中加个暂停的功能
      

  2.   

    不太清楚。但是楼主请弄清楚 setInterval 和 setTimeout的区别吧。
      

  3.   

    我在网上找了下面这个例子,但是鼠标第一次放上去还能暂停。移开后再放上去,也不能暂停了。和我的问题是一样的。
    <script type="text/javascript">
    function AutoScroll(obj){
            $(obj).find("ul:first").animate({
                    marginTop:"-25px"
            },500,function(){
                    $(this).css({marginTop:"0px"}).find("li:first").appendTo(this);
            });
      marquee=setTimeout('AutoScroll("#scrollDiv")',3000);
    }
    $(document).ready(function(){
    AutoScroll("#scrollDiv");
    $("#scrollDiv").hover(function(){
        clearTimeout(marquee);
      },function(){
       AutoScroll("#scrollDiv");
      });
    });
    </script>
      

  4.   

    我已经定位到了问题,所以新开了个帖子,请大家移步
    http://topic.csdn.net/u/20111202/15/94ff47f0-a1c7-43eb-bb49-e373a6b10550.html