2010-09-10 44 views
1

有人可以給我一雙額外的眼睛,並告訴我什麼是錯的?JavaScript錯誤

問題262行字符9:隱含的eval是邪惡的。傳遞函數而不是字符串。 setTimeout(「dojo.addClass(dojo.byId('transition'),'hide')」,1380);

回答

1

JavaScript不是PHP 5.3之前的版本,並且不會將回調作爲字符串傳遞。您可以使用像這樣的匿名函數:

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

更重要的是,JavaScript的* *今天沒有的JavaScript在1997年:-) – 2010-09-10 14:13:53

+0

事實上,'setTimeout'接受一個字符串作爲第1 PARAM,和一個int第二。 http://www.w3schools.com/js/js_timing.asp – 2010-09-10 14:14:17

+0

您實際上可以將javascript代碼作爲字符串傳遞給'setTimeout()'。它會得到'評估'。 – jAndy 2010-09-10 14:14:47