如何保持所选元素's节点的值(而不是引用)
How can I hold the selected element's node by value (and not reference) in Javascript?
我不得不删除body
中的所有内容,除了DOM中的图像。所以,这就是我所做的。
-
将img标记存储在变量中。
var img_nodes = document.getElementsByTagName('img');
-
删除了
body
中的所有内容var body_node = document.getElementsByTagName('body'); body_node[0].innerHTML = ''
-
添加存储的img节点作为子
for each (child in img_nodes){ body.appendChild(child); }
但是在我运行了body_node[0].innerHTML = ''
之后,img_nodes变成了undefined
。
我想发生这种情况是因为元素节点作为对象(作为引用)存储在列表中。如何保存选定的img_nodes对象?
您可以在清除正文内容之前克隆图像节点。请参阅cloneNode上的文档。示例:
var cloned_nodes = [];
for each (child in img_nodes){
cloned_nodes.push(child.cloneNode(true));
}
相关文章:
- 如何引用HTML中节点模块中的js文件
- 节点.js V8 通过引用传递
- 如何保持所选元素's节点的值(而不是引用)
- appendChild上的错误-试图在不存在节点的上下文中引用该节点
- 创建服务器并在节点.js服务器 (EdgeJS) 中引用 API
- 如何引用对象中的其他节点
- 不包含块引用的节点的查询选择器
- 如何获取对 JS中 ::before 或 ::after 节点的引用
- 节点引用包含的帮助程序类上的错误
- 未捕获的 NotFoundError:尝试在不存在的上下文中引用节点
- 为什么以及如何jQuery的“$(this)”引用正确的节点
- 节点网络套件引用错误
- 未捕获的引用错误:未定义要求 - 节点.js
- 如何通过按 id 注册但未在任何 DOM 节点中引用来删除 dojo 小部件
- 使用 EJS 部分和角度的节点/快速项目:未捕获的引用错误:未定义角度
- 不允许在 Angular 表达式中引用 DOM 节点
- 获取循环中引用的子节点的水平偏移位置
- 保留对dom节点的引用:内存问题
- Javascript构建元素引用节点列表
- 如何在html内正确引用节点脚本模块