2010-10-30 108 views
3

我是JavaScript和jQuery的新手。這是唯一的代碼,我有一個非常空白頁上:關於document.write函數的一個非常基本的JavaScript問題

<script type="text/javascript" src="jquery.min.js"></script> 

    <script type="text/javascript"> 
     $(document).ready(function() { 

      document.write('Hello World'); 

     }); 
    </script> 

當我加載頁面在瀏覽器中(使用Firefox)的狀態圖標和打開的選項卡的圖標區域顯示加載符號,如如果指示document.write函數正在循環中連續執行。

這是爲什麼?我只是想說「一旦頁面準備好輸出字符串Hello World ONCE」。這裏有什麼問題?

p.s.我注意到如果我拿出代碼的document.ready部分沒有循環。不知道爲什麼事件就緒處理程序導致此問題。

回答

6

document.write,如果在加載DOM後執行,則會完全重寫該頁面。它只能在DOM加載時執行,而不能在DOM完成加載後發生,並且$(document).ready()發生。

您正在期待append()

<script type="text/javascript"> 
    $(document).ready(function() { 

     $('body').append('Hello World'); 

    }); 
</script> 
+0

+1爲編輯'$(document).ready()發生在[...] – 2010-10-30 03:57:12