1. 程式人生 > >【JavaScript】頁面載入 解決Uncaught TypeError: Cannot set property of undefined at

【JavaScript】頁面載入 解決Uncaught TypeError: Cannot set property of undefined at

在初學js的時候,有同學會遇到

    Uncaught TypeError: Cannot set property 'onmouseover' of undefined
at **.html

的問題

這個問題牽扯到頁面載入順序的問題。
我們知道 頁面的載入順序(正確的順序)是

    結構>樣式>行為   
    也就是
    html>css>JavaScript

如果我們的js部分寫到了頁面內容的前面,那麼在載入的時候,瀏覽器的載入順序(錯誤順序)是js>html,所以 我們在js中獲取的html元素就出現了undefined的錯誤。

    因為沒有載入html的時候,js的執行物件找不到。

解決方法:

    1.把js內容提到頁面內容之後,也就是說 你的</script>標籤要緊挨著</body>標籤
    2.把所有的js程式碼用
        window.onload=function(){
            (這裡寫程式碼)
        };
    包起來即可。