簡體   English   中英

如何使用 DOM JavaScript 插入元素

[英]How can I insert element using DOM JavaScript

此代碼僅適用於某些控制台...

我希望一個 div 在單擊時出現在按鈕之前,僅使用 DOM。

我該如何修復此代碼????

<html>
    <body>
        <div id ='div'>
        <button id = 'button'>click me!</button>
        </div>

        <script>
            var button = document.getElementById('button');
            var div = document.getElementById('div');
            var appearingDiv = document.createElement('div');
            var appearingDivText = document.createTextNode("Hi how are you? Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?Hi how are you?");
            
            appearingDiv.appendChild(appearingDivText);
            
            button.addEventListener('click',buttonClicked);
            
            function buttonClicked(){
                div.insertBefore(appearingDiv,button);
            }   
                
        </script>
        
    </body>
</html>```


insertBefore方法需要兩個參數“引用”,但您只傳遞一個參數。

解決方案:

 <!DOCTYPE html> <html> <body> <div class="header"> <div class="old">This is paragraph 1</div> </div> <script> //New Element var newDiv = document.createElement('div'); var newDivText = document.createTextNode('this is a new div!'); newDiv.appendChild(newDivText); //Add to header div var container = document.querySelector('div.header'); var oldDiv = document.querySelector('div.old'); container.insertBefore(newDiv, oldDiv); </script> </body> </html>

這是一個錯字: insertBefore('newDiv, oldDiv'); 您傳入一個字符串,刪除 newDiv, oldDiv -> insertBefore(newDiv, oldDiv); 周圍的單引號; — 瑞安·威爾遜

暫無
暫無

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

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