为什么 Javascript 只加载一次?

Why is Javascript loading only once?

请参考以下脚本

<html>
  <style>
     #div_content {
        height: 200px;
        width: 200px;
        background-color: yellow;
        position: relative;
     }
     #btn_addContent{
       position: absolute;
       left: 0;
       bottom: 0;
     }
    #btn_removeContent{
       position: absolute;
       right: 0;
       bottom: 0;
     }
  </style>

  <body>
     <div id="div_content">
       <p> Existing Content </p>
       <button id="btn_addContent">Add Content </button>
       <button id="btn_removeContent">Remove Content </button>
     </div>
     
  </body>

  <script>
      var divElement = document.getElementById("div_content");

      function addContent(){
         divElement.innerHTML = divElement.innerHTML + "<P> New Content </p>";
      }

      function removeContent(){
         divElement.parentNode.removeChild(divElement);
      }


      var btnAddContent= document.getElementById("btn_addContent");
      btnAddContent.onclick = addContent;

      var btnRemoveContent = document.getElementById("btn_removeContent");
      btnRemoveContent.onclick = removeContent;
      
  </script>

</html>

虽然 运行 这个脚本,任何功能都是 运行 也只有一次意味着 Javascript 只加载一次,请做有需要的。 即,如果我想 addcontent 我可以一次添加它 同时意味着在同一页面上,如果我想删除我无法删除的 div_content 部分, 但是,在重新加载时我能够删除 div_content 部分 也就是说,对于每次重新加载,我只能添加或删除,不能同时添加或删除,甚至不能添加多个。

innerHTML +=会销毁所有子元素引用(在DOM树中删除并重新添加)。

Use .appendChild

MDNinnerHTML移除所有元素的children,解析内容字符串并将结果节点分配为children element.

var divElement = document.getElementById("div_content");

function addContent() {
  var elem = document.createElement('p');
  elem.textContent = 'New Content';
  divElement.appendChild(elem);
}

function removeContent() {
  divElement.parentNode.removeChild(divElement);
}
var btnAddContent = document.getElementById("btn_addContent");
btnAddContent.onclick = addContent;
var btnRemoveContent = document.getElementById("btn_removeContent");
btnRemoveContent.onclick = removeContent;
#div_content {
  height: 200px;
  width: 200px;
  background-color: yellow;
  position: relative;
}
#btn_addContent {
  position: absolute;
  left: 0;
  bottom: 0;
}
#btn_removeContent {
  position: absolute;
  right: 0;
  bottom: 0;
}
<div id="div_content">
  <p>Existing Content</p>
  <button id="btn_addContent">Add Content</button>
  <button id="btn_removeContent">Remove Content</button>
</div>