2012-05-31 55 views
15

這是一個非常簡單的程序,輸出應該是s和JavaScript,但我只得到aJavaScript innerHTML不工作

<html> 
    <head> 
     <title></title> 
     <script type="text/javascript"> 
      document.getElementById("ma").innerHTML="JavaScript"; 
     </script> 
    </head> 
    <body> 
     <h1 id="ma">s</h1> 
    </body> 
</html> 

回答

21

該元素在您嘗試設置值時不存在。在將<h1>添加到DOM後,您需要調用此方法。

您可以進一步向下移動這個<script>標籤,或者你的邏輯添加到一個函數,它應該當文件被加載到被稱爲:

window.onload = function() { 
    /* Add your logic here */ 
} 

演示:http://jsfiddle.net/Lr2Hm/

+1

工作就像對我的魅力。謝謝。 –

9

你必須等到DOM加載完畢。

window.onload = function(){ 
    document.getElementById("ma").innerHTML="JavaScript"; 
} 
11

你有兩個選擇:

window.onload = function() { 
    //your script here 
} 

<body> 
    <h1 id="ma">s</h1> 
    <script type='text/javascript'> 
     //your script here 
    </script> 
</body>