window.setInterval("moveUp(fire,2)","100");
在上面的代码中fire是一个代表div的对象。我想将此对象传递给moveUp方法并连续调用此方法。
我的问题是window.setInterval不接受这样的fire对象,并且因为没有定义fire而给出错误。虽然我也在其他地方使用火对象。除此之外我还想知道我是否可以使用jQuery做同样的事情。
答案 0 :(得分:8)
如果您将字符串传递给setInterval
,那么它将在全局范围内eval
。不要那样做。改为传递函数,并保留现有范围。
var fire = something;
var func = function () {
moveUp(fire, 2);
};
setInterval(func,100);
除此之外,我还想知道我是否可以使用jQuery做同样的事情。
jQuery只是一个JavaScript库。它不是一种不同的语言。它没有基本JavaScript的替代品。
答案 1 :(得分:1)
Best Way将使用匿名函数:
setInterval(function(){
moveUp(fire,2);
},100);
它实际上看起来有点像jQuery ...开玩笑说,jQuery没有setInterval
实现,因为它的语法和跨浏览器功能就好了 - 不是吗?