javascript - 从 body 内容 append DIV 会删除 DOM 元素

标签 javascript dom append

以下是我的代码

;(function(window){

    var description_window= document.querySelector('.post_description');

    var $headings= document.querySelectorAll('.blog_main_content h3');

    for (var i = $headings.length - 1; i >= 0; i--) {

        description_window.appendChild($headings[i]);
    };

})(window);

这里“.post_description”是我尝试向其 append 元素的 DIV 的类。这些元素是“.blog_main_content”的 H3 元素。但是,这样做会从博客主要内容中删除 h3 元素。

有人可以帮忙吗

谢谢

最佳答案

您需要克隆有问题的节点,目前$headings指的是实际的DOM内容,而不是它的js版本。您可以使用cloneNode这样做。像这样的东西:

;(function(window){

var description_window= document.querySelector('.post_description');

var $headings= document.querySelectorAll('.blog_main_content h3');

for (var i = $headings.length - 1; i >= 0; i--) {

    description_window.appendChild($headings[i].cloneNode(true));
};

})(窗口);

这里也提出了类似的问题how to get clone element of queryselectorall and append to anothor div

关于javascript - 从 body 内容 append DIV 会删除 DOM 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43805944/

相关文章:

javascript - Knockout.js 根据另一个下拉列表更改下拉列表的可能值

html - jQuery 手机 : Dynamically loaded content bloating the DOM

javascript - 动态创建的 <a> 标签的功能不起作用

javascript - 在动态页面上使用 javascript 重写链接

jQuery append 每种方法都不显示 html

C - 使用 char 和 int 创建数据包

javascript - 从每个组合框中选择一个选项

javascript - Jquery - 需要使用选定的单词验证文本字段

javascript - 数组不打印调用的方法

python - 将微型列表 append 到更大的列表