Javascript jquery:退出函数

Javascript jquery:退出函数,javascript,jquery,Javascript,Jquery,我正在用jquery做动画。我有一个循环图片从左到右的网页。我使用了以下代码: function run() { $("#run").animate({ left: "980px" }, 250).animate({ left: "-600px" }, 0); setTimeout("run()", 250); } 我想在按下按钮后停止循环(或中断功能)。返回一个可用于取消循环的值 //Start var ref = setTimeout(...); //Stop clearTi

我正在用jquery做动画。我有一个循环图片从左到右的网页。我使用了以下代码:

 function run() {  $("#run").animate({ left: "980px" }, 250).animate({
  left: "-600px" }, 0);   setTimeout("run()", 250);
 }
我想在按下按钮后停止循环(或中断功能)。

返回一个可用于取消循环的值

//Start
var ref = setTimeout(...);
//Stop
clearTimeout(ref);
另外,如果只是使用一个函数,只传递它比强制求值更安全

setTimeout(run, 250);
返回可用于取消的vlaue

//Start
var ref = setTimeout(...);
//Stop
clearTimeout(ref);
另外,如果只是使用一个函数,只传递它比强制求值更安全

setTimeout(run, 250);

听起来您希望此动画一直运行到用户按下按钮为止。为此,我将设置一个
setInterval
循环,并使用
clearInterval
在单击按钮时停止它

var runTimer = setInterval(function() {
  $("#run").animate({ left: "980px" }, 250).animate({ left: "-600px" }, 0);   
}, 250);

$('#stopAnimation').click(function () {
  clearInterval(runTimer);
}

听起来您希望此动画一直运行到用户按下按钮为止。为此,我将设置一个
setInterval
循环,并使用
clearInterval
在单击按钮时停止它

var runTimer = setInterval(function() {
  $("#run").animate({ left: "980px" }, 250).animate({ left: "-600px" }, 0);   
}, 250);

$('#stopAnimation').click(function () {
  clearInterval(runTimer);
}

您想调用清除超时

var timeout;

 function run() {  $("#run").animate({ left: "980px" }, 250).animate({
  left: "-600px" }, 0); 
   timeout =setTimeout("run()", 250);
 }
 function cancel() { clearTimeout(timeout); }

您想调用清除超时

var timeout;

 function run() {  $("#run").animate({ left: "980px" }, 250).animate({
  left: "-600px" }, 0); 
   timeout =setTimeout("run()", 250);
 }
 function cancel() { clearTimeout(timeout); }
在每个动画之前尝试使用stop()方法

function run() { 
    $("#run").stop().animate({ left: "980px" }, 250, function(){
        $(this).css('left', '-600px');
    });
    setTimeout("run()", 250); 
}
在每个动画之前尝试使用stop()方法

function run() { 
    $("#run").stop().animate({ left: "980px" }, 250, function(){
        $(this).css('left', '-600px');
    });
    setTimeout("run()", 250); 
}

“直接停止动画”中的“停止循环”?如果是这样,您还可以查看
.stop
(除了清除间隔之外)。setTimeout可以将函数作为参数:setTimeout(run,250)“停止循环”与“直接停止动画”一样?如果是这样,您也可以查看
.stop
(除了清除间隔)。setTimeout可以将函数作为参数:setTimeout(run,250)setTimeout可以将函数作为参数:setTimeout(run,250)setTimeout可以将函数作为参数:setTimeout(run,250)“setInternal”应该是“setInterval”对于所有复制的粘贴程序:P@jbabey谢谢,我不能告诉你我犯了多少次这样的拼写错误:(“setInternal”应该是“setInterval”,对于所有你复制的贴纸:P@jbabey谢谢,我不能告诉你我犯了多少次拼写错误:(