使用JavaScript插入HTML元素两次(或两次以上)
Insert HTML element two (or more) times using JavaScript
如何使用JavaScript两次插入HTML元素?
此代码不起作用:
var div = document.createElement('div');
div.innerText = 'Hello!';
document.body.appendChild(div);
document.body.appendChild(div);
测试:http://jsfiddle.net/9z82D/
好的,我发现你只需要使用克隆节点:
var div = document.createElement('div');
div.innerText = 'Hello!';
document.body.appendChild(div);
var div2 = div.cloneNode(true);
document.body.appendChild(div2);
为了详细说明您的答案,appendChild不是对元素"div"进行复制并将其附加到主体的末尾,而是移动实际节点。
因此,如果您有两个元素,div和div2,并且您有:
document.body.appendChild(div);
document.body.appendChild(div2);
document.body.appendChild(div);
div被插入到主体的末尾,然后是div2,然后div从顶部移动到底部。(参见http://jsfiddle.net/9z82D/3/)
这很有帮助,因为在附加div之后对div所做的任何更改仍然反映在对象div中。如果不是这样,则在进行任何其他更改之前,您必须执行额外的getElementsByTagName以重新获取元素。
例如,在附加节点后尝试div.innerText='goodbye';
——文本将更新,而无需再次附加。
与其克隆和创建多个变量,不如循环它:
for(i=0;i<2;i++)
{
var div = document.createElement('div');
div.innerText = 'Hello!';
document.body.appendChild(div);
}
相关文章:
- 由于$compile,Javascript(Angular)嵌套指令加载了两次
- Javascript onclick需要点击两次,然后会创建越来越多的服务器请求
- JavaScript onclick在IE 9中工作两次,然后停止
- JavaScript倒计时计时器不会显示两次
- 在 Javascript 中拆分包含单次出现(不是两次)分隔符的字符串
- Primefaces:RequestContext.execute-调用了两次Javascript
- 地图,rails 4.2,javascript,鼠标悬停,只工作一次(或两次).然后在重新加载之后
- javascript_include_tag :应用程序在开发环境中加载 JavaScript 两次
- 使用PHP在IE上发出两次javascript警报
- 有没有办法阻止脚本加载两次?JavaScript
- 不可能在一个页面中使用两次JavaScript
- 无法在一个页面上运行两次JavaScript函数(在WordPress循环内)/JavaScript函数获胜'不
- 在一个文档中使用两次javascript文档就绪
- 一次回车键按下会运行两次JavaScript键按下事件处理程序代码
- 事件处理程序调用两次(javascript)
- 使用两次Javascript代码
- 在Developer's控制台中运行两次Javascript
- 选择如果数组元素重复两次——Javascript
- jQuery.当list中有三个对象时,每个遍历list两次.Javascript
- 调用同一个函数两次- JavaScript