JavaScript错误

JavaScript错误,javascript,Javascript,有没有人能多给我一双眼睛看看,告诉我怎么了 第262行的问题第9个字符:隐含的eval是邪恶的。传递函数而不是字符串 setTimeout(“dojo.addClass(dojo.byId('transition'),'hide')”,1380) JavaScript不是phppre-5.3,您不能以字符串形式传递回调。您使用的匿名函数如下所示: setTimeout(function() { dojo.addClass(dojo.byId('transition'), 'hide'); },

有没有人能多给我一双眼睛看看,告诉我怎么了

第262行的问题第9个字符:隐含的eval是邪恶的。传递函数而不是字符串


setTimeout(“dojo.addClass(dojo.byId('transition'),'hide')”,1380)

JavaScript不是phppre-5.3,您不能以字符串形式传递回调。您使用的匿名函数如下所示:

setTimeout(function() { dojo.addClass(dojo.byId('transition'), 'hide'); }, 1380);

JavaScript不是PHP5.3之前的版本,您不能以字符串形式传递回调。您使用的匿名函数如下所示:

setTimeout(function() { dojo.addClass(dojo.byId('transition'), 'hide'); }, 1380);

更重要的是,现在的JavaScript已经不是1997年的JavaScript了。:-)实际上,
setTimeout
将字符串作为第一个参数,int作为第二个参数。实际上,您可以将javascript代码作为字符串传递给
setTimeout()
。在意识到这是正确答案后,我收回了我的否决票,因为错误告诉了你该怎么做:“传递一个函数而不是一个字符串”。我没有说你不能这样做,但这不是一个公认的做法,这就是JSLint抱怨的原因。否决票是不合理的。更重要的是,今天的JavaScript不是1997年的JavaScript实际上,
setTimeout
将字符串作为第一个参数,int作为第二个参数。实际上,您可以将javascript代码作为字符串传递给
setTimeout()
。在意识到这是正确答案后,我收回了我的否决票,因为错误告诉了你该怎么做:“传递一个函数而不是一个字符串”。我没有说你不能这样做,但这不是一个公认的做法,这就是JSLint抱怨的原因。否决票是没有道理的。