【報錯】(Javascript):Cannot set property 'onclick' of null

這個錯誤呢,很明顯,就是找不到設置“onclick”屬性的對象,有兩個解決思路:

1. 改變JS文件的加載位置

當js代碼放在head裏面時,如果綁定了類似onclick或者onmouseover事件,很可能出現類似的錯誤。這是因爲瀏覽器加載HTML文檔的順序是從上往下的,如果遇到JS代碼,就會暫停解析,把控制權交給JavaScript引擎,解析完畢後再將控制權交還給瀏覽器渲染引擎。如果JS代碼位於<head>或<body>中部,那麼在執行JS命令的時候很可能HTML文檔的DOM樹還沒有加載完全,因此找不到對應的DOM結點,瀏覽器就會因爲找不到對象而報錯。

解決辦法:

第一,把js文件放在底部加載;

第二,使用window.οnlοad=function(){ }包裹js內容。

2. 檢查對象本身是否存在

JS中,我們常常利用getElementById來獲得對象的引用。在這裏,千萬要注意,拼寫錯誤……

畢竟,你的id寫錯了,程序當然找不到對象,對於Null來說,當然也不會有各種屬性了……

如果你找不到錯誤,可以搜索一下這個參數,看看是否定義了這個對象,可能會有驚喜哦~


我的錯誤竟然是第二種……我一定是個傻子……

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章