Javascript是執行順序是至上而下的,除非你特別說明, Javascript代碼不會等到頁面加載完畢后才執行。比如一個網頁里含有以下HTML代碼:
<p id="ele">welcome to www.codeceo.com</p>
如果你在這行HTML代碼前,加入如下Javascript代碼:
<script type="text/javascript"> document.getElementById('ele').innerHTML= 'welcome to my blog'; </script>
運行該頁面,你會得到這樣的錯誤信息:“document.getElementById(‘ele’) is null。”原因是,當上面的javascript運行時,頁面上還沒有ID為‘ele’的DOM元素。
解決辦法有兩種:
1. 把javascript代碼放在HTML代碼之后:
<p id="ele">welcome to www.codeceo.com</p> <script type="text/javascript"> document.getElementById('ele').innerHTML='welcome to my blog'; </script>
2. 等到在網頁加載完畢后,運行該javascript代碼。你可以使用傳統的解決辦法(load):首先加HTML的body加入“<body load=”load()”>,”然后在load()函數里調用上述javascript代碼。這里要著重介紹的是用jQuery來實現:
<script> $(document).ready(function(){ document.getElementById('ele').innerHTML= 'welcome to my blog'; }); </script> //當然,既然用到了jQuery,更簡單的寫法是: <script> $(document).ready(function(){ $('#ele').html('welcome to my blog'); //這里也可用.text()方法 }); </script>
你可以把上述jQuery代碼放在頁面的任何位置,它總是等到頁面加載完畢后才執行。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com