2012-06-26 121 views
0

我寫了代碼,當用戶打開頁面時應該清除表單。它在FF中工作,但不在IE中,爲什麼?Javascript window.onload不能在IE中工作

window.onload = clearForm() 

    function clearForm() 
{ 

("load event detected!"); 

}; 
+2

分配你的函數的結果。這*有*是重複。它一定要是。 :-) –

回答

4

這條線:

window.onload = clearForm() 

電話clearForm,然後指定其返回值window.onload,酷似x = foo();電話foo並將結果x分配。刪除括號:

window.onload = clearForm 

另外,我會強烈建議依靠是automatic semicolon insertion恐怖。始終提供所有必需的分號:

window.onload = clearForm; 

(有趣的是,你需要一個在你function clearForm() { ... }的結束,因爲這是一個函數聲明,不聲明它是無害的,但是。)

+0

很好,謝謝你 –

+1

@NasanErt:不用擔心。僅供參考,因爲你在這裏是新的:http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work雖然與另外10分鐘左右不相關。 :-) –

+0

我會調用函數聲明一個函數表達式,因爲[函數聲明](http://kangax.github.com/nfe/#function-statements)看起來像函數聲明,但你可以聲明它們有條件在基於Gecko的瀏覽器中。 –

0

變化,因爲否則window.onload = clearForm()window.onload = clearForm;()你是window.onload