我在使用setInterval修复问题时遇到了一些麻烦。
我有一个函数,当我点击我的网站上设置var pass = 1;
的元素时运行如果你看color1();有一个设置间隔,当通过时清除自身> 0;所以如果pass = 1;然后它应该清除它,它确实,但只是在再次运行间隔之后。
所以它 - 运行setInterval,清除setInterval,然后运行setInterval中的其余代码。我需要的是,无需再次运行代码即可清除setInterval。
提前致谢
function color1() {
var pass = 1;
var counter = 2;
var animationSpeed = 800;
var $colorContent = '.color-container-1 .color-content-container'
var colorInterval = setInterval(function() {
if (pass > 0) {
clearInterval(colorInterval);
}
$($colorContent).fadeOut(0);
$(($colorContent + '-' + counter)).fadeIn(animationSpeed);
++counter
if (counter === $($colorContent).length + 1) {
counter = 1;
}
}, 3000);
}
答案 0 :(得分:1)
应该如下所示,你应该 self.returnFullName = function(item) {
console.log("self.returnFullName called.");
console.log(item);
return item.firstName() + ' ' + item.lastName();
};
这个功能。在这里你已经清除了间隔,但你还没有停止执行
return