我在互联网上找不到答案。我有一个var
可以克隆一个元素。该var
通过setInterval
函数传递,该函数每1秒重复一次此克隆过程。接下来,我尝试通过单击文档来停止此过程。
这是一个小提琴:http://jsfiddle.net/7mcno43m/
var interval = setInterval(function(){
var clone = $('div').clone().first().appendTo('body')
}, 1000);
$(document).click(function(){
clone = false
})
我知道我可以使用
clearInterval
来做到这一点,但我想找到另一种方法。 最佳答案
您可以设置布尔值标志变量,然后克隆将基于该变量。还应该在两个代码块的范围内设置clone
以便可以访问它。尝试这个:
var allowClone = true;
var clone;
var interval = setInterval(function(){
if (allowClone)
clone = $('div').clone().first().appendTo('body');
}, 1000);
$(document).click(function(){
clone = null; // empty it if it was set (optional)
allowClone = false;
})
Updated fiddle
我建议您改用
clearInterval()
,否则您将浪费时间并降低性能。关于jquery - 如何停止clone()?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29495773/