簡體   English   中英

使用JavaScript更改div

[英]Changing a div with javascript

我已經無法在javascript中執行一項看似基本的任務-通過腳本更改div的內容。 請幫助我了解我要去哪里。 這是一個對我不起作用的最小示例:

<!DOCTYPE html>
<html>
    <head>
        <script>
            document.getElementById('id').innerHTML = "test";
        </script>

    </head>

    <body>
        <div id="id" >blub</div>
    </body>
</html>

您的編碼問題是在div部分完全加載之前執行了JavaScript代碼。 要解決此更改,您可以將代碼編寫為:

<!DOCTYPE html>
<html>
    <head>
        <script>
            function changeDiv()
            {
                document.getElementById('id').innerHTML = "test";
            }
        </script>

    </head>

    <body onload="changeDiv();">
        <div id="id" >blub</div>
    </body>
</html>

僅當html完全加載后,才會觸發onload事件。

<!DOCTYPE html>
 <html>
   <head>


   </head>

    <body>
       <div id="id" >blub</div>
       <script>
          document.getElementById('id').innerHTML = "test";
      </script>
   </body>
 </html>

將您的腳本放在div之后。

HTML文件的加載從html的頂部到底部開始。

在您的示例中,javascript在<body>標記在DOM中存在之前執行。

將javascript移動到相關html的下方,即可按預期工作。

另一個選擇是將腳本保留在<head>內,但將其從執行到延遲到加載DOM為止

window.onload = function() {
     document.getElementById('id').innerHTML = "test";
};

https://developer.mozilla.org/en/docs/Web/API/GlobalEventHandlers/onload

 <!DOCTYPE html> <html> <head></head> <body> <div id="id" >blub</div> <script> document.getElementById('id').innerHTML = "test"; </script> </body> </html> 

當html完全加載時,您需要使用window.onload來調用代碼:

 <!DOCTYPE html> <html> <head> <script> window.onload = function() { document.getElementById('id').innerHTML = "test"; }; </script> </head> <body> <div id="id" >blub</div> </body> </html> 

您的Dom尚未加載。.將您的腳本標簽放在最后

只需在關閉正文之前添加腳本標簽即可。 會的

您必須在div-Tag之后編寫Javascript。 首先需要加載DOM,然后可以在DIV中更改內容。

將您的Javascript放在閉包標記之前

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM