使用JavaScript添加新元素到DOM(appendChild) [英] Adding new elements into DOM using JavaScript (appendChild)

查看:84
本文介绍了使用JavaScript添加新元素到DOM(appendChild)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有时需要向现有的HTML页面添加元素(如新的链接和图像),但我只能访问页面的一小部分,远离我需要插入元素的位置。我想使用基于DOM的JavaScript技术,我必须避免使用document.write()。

I sometimes need to add elements (such as a new link and image) to an existing HTML page, but I only have access to a small portion of the page far from where I need to insert elements. I want to use DOM based JavaScript techniques, and I must avoid using document.write().

到目前为止,我一直在使用这样的东西:

Thus far, I've been using something like this:

//  Create new image element
var newImg = document.createElement("img");
  newImg.src = "images/button.jpg";
  newImg.height = "50";
  newImg.width = "150";
  newImg.alt = "Click Me";
//  Create new link element
var newLink = document.createElement("a");
  newLink.href = "/dir/signup.html";
//  Append new image into new link
newLink.appendChild(newImg);
//  Append new link (with image) into its destination on the page
document.getElementById("newLinkDestination").appendChild(newLink);

有没有更有效的方法可以用来完成同样的事情?这一切似乎都是必要的,但是我想知道是否有更好的方式可以做到这一点。

Is there a more efficient way that I could use to accomplish the same thing? It all seems necessary, but I'd like to know if there's a better way I could be doing this.

推荐答案

有一种更有效的方式,如果可能,似乎使用documentFragments。
查看: http://ejohn.org/blog/dom-documentfragments/。此外,这种方式应该比开始混合大量字符串文字并将其设置为一些其他DOM对象的innerHTML时更容易出错,更易于维护。

There is a more efficient way, and seems to be using documentFragments if possible. Check it out: http://ejohn.org/blog/dom-documentfragments/ . Also this way should be less error prone and more maintainable than starting to mix up huge strings literals and setting them as innerHTML of some other DOM objects.

这篇关于使用JavaScript添加新元素到DOM(appendChild)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆