innerHTML剥离类?

时间:2015-02-14 21:27:06

标签: javascript html

我有一个带有HTML的div,我正试图在一个空div中。新div应该从原始内容中获取所有内容和样式。

现有内容:

<ul id="existing_id" class="my_class">
  <strong>Does not show up in new div</strong>
  <li class="style">
    <p class="style">Shows up in new div</p>
  </li>
</ul>

新的空div - 我从#34; existing_id&#34;成:

<div id="empty_div"></div>

我通过JS定位元素:

var existing = document.getElementById("exisiting_id")
var existing_li = existing.getElementsByTagName("li")
var empty_div = document.getElementById("empty_div")
var myArray = []

empty_div.innerHTML = ""

// Pushing each existing li element inside myArray
for (var i=0; i < existing_li.length; i++) { myArray.push(existing_li[n]; }

function make_it_happen() {
  empty_div.innerHTML += myArray.innerHTML
}

我从新的div中获取#existing_id内容 - 但不是与每个元素相关联的样式。某些元素也会被忽略,例如<strong>Does not show up in new div</div>

1 个答案:

答案 0 :(得分:2)

如果您想要将所有LI元素中的所有HTML收集到empty_div中,那么您不需要myArray。以下应该做:

var existing = document.getElementById("existing_id")
var existing_li = existing.getElementsByTagName("li")
var empty_div = document.getElementById("empty_div")

function make_it_happen() {
  var html = '';
  for (var i = 0; i < existing_li.length; i++) {
      html += existing_li[i].innerHTML;
  }
  empty_div.innerHTML = html;
}