js中AppendChild与insertBefore的用法详细解析

 这篇文章主要是对js中AppendChild与insertBefore的用法进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助

appendChild定义
appendChild(newChild: Node) : Node
Appends a node to the childNodes array for the node.
Supported: IE 5.0+, Mozilla 1.0+, Netscape 6.0+, Safari 1.0+, Opera 7.0+
添加一个节点到指定的节点的子节点数组中,读起来好象有点拗口,简单地说就是将元素添加到指定的节点中
 
appendChild用法
target.appendChild(newChild)
 
newChild作为target的子节点插入最后的一子节点之后
 
appendChild例子
var newElement = document.Document.createElement('label'); 
newElement.Element.setAttribute('value', 'Username:');
 
var usernameText = document.Document.getElementById('username'); 
usernameText.appendChild(newElement); 
 
insertBefore定义
The insertBefore() method inserts a new child node before an existing child node.
 
insertBefore() 方法的作用是:在现有的子节点前插入一个新的子节点
 
insertBefore用法
target.insertBefore(newChild,existingChild)
 
newChild作为target的子节点插入到existingChild节点之前
 
existingChild为可选项参数,当为null时其效果与appendChild一样
 
insertBefore例子
var oTest = document.getElementById("test");
var newNode = document.createElement("p");
newNode.innerHTML = "This is a test";
 
oTest.insertBefore(newNode,oTest.childNodes[0]);  
 
 
好了那么有insertBefore的应该也有insertAfter吧?
好那我们来用Aptana编写一个例子吧,但Aptana的智能提示告诉我其实没有insertAfter这个方法
那么就自己定义一个罗:)
 
insertAfter定义
function insertAfter(newEl, targetEl)
{
      var parentEl = targetEl.parentNode;
 
      if(parentEl.lastChild == targetEl)
      {
           parentEl.appendChild(newEl);
      }else
      {
           parentEl.insertBefore(newEl,targetEl.nextSibling);
      }            
}
 
 
insertAfter用法与例子
var txtName = document.getElementById("txtName");
var htmlSpan = document.createElement("span");
htmlSpan.innerHTML = "This is a test";
insertAfter(htmlSpan,txtName);
 
将htmlSpan 作为txtName 的兄弟节点插入到txtName 节点之后
 
总结:
1、appendChild和insertBefore是做对节点的方法来使用的,而insertAfter只是自定义的一个函数
 
2、insertBefore相对于appendChild来说,比较灵活可以将新的节点插入到目标节点子节点数组中的任一位置。
 
3、使用appendChild和insertBefore来插入新的节点前提是,其兄弟节点必须有共同的父节点
 
 

时间: 2024-12-30 14:29:41

js中AppendChild与insertBefore的用法详细解析的相关文章

js中AppendChild与insertBefore的用法详细解析_javascript技巧

appendChild定义appendChild(newChild: Node) : NodeAppends a node to the childNodes array for the node.Supported: IE 5.0+, Mozilla 1.0+, Netscape 6.0+, Safari 1.0+, Opera 7.0+添加一个节点到指定的节点的子节点数组中,读起来好象有点拗口,简单地说就是将元素添加到指定的节点中 appendChild用法target.appendChil

js中opener与parent的区别详细解析

 本篇文章主要是对js中opener与parent的区别进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 opener即谁打开我的,比如A页面利用window.open弹出了B页面窗口,那么A页面所在窗口就是B页面的opener,在B页面通过opener对象可以访问A页面.   parent表示父窗口,比如一个A页面利用iframe或frame调用B页面,那么A页面所在窗口就是B页面的parent.在JS中,window.opener只是对弹出窗口的母窗口的一个引用.比如:a.ht

js中opener与parent的区别详细解析_javascript技巧

opener即谁打开我的,比如A页面利用window.open弹出了B页面窗口,那么A页面所在窗口就是B页面的opener,在B页面通过opener对象可以访问A页面. parent表示父窗口,比如一个A页面利用iframe或frame调用B页面,那么A页面所在窗口就是B页面的parent.在JS中,window.opener只是对弹出窗口的母窗口的一个引用.比如:a.html中,通过点击按钮等方式window.open出一个新的窗口b.html.那么在b.html中,就可以通过window.o

js中window.open()的所有参数详细解析_javascript技巧

[1.最基本的弹出窗口代码]  复制代码 代码如下:  <SCRIPT LANGUAGE="javascript">  <!--  window.open ('page.html')  -->  </SCRIPT>    因为着是一段javascripts代码,所以它们应该放在<SCRIPT LANGUAGE="javascript">标签和</script>之间.<!-- 和 -->是对一些版

c++中new的三种用法详细解析_C 语言

一. 简介new有三种使用方式:plain new,nothrow new和placement new. (1)plain new顾名思义就是普通的new,就是我们惯常使用的new.在C++中是这样定义的:    void* operator new(std::size_t) throw(std::bad_alloc);    void operator delete(void *) throw(); 提示:plain new在分配失败的情况下,抛出异常std::bad_alloc而不是返回NU

js中继承的几种用法总结

 本篇文章主要介绍了js中继承的几种用法总结(apply,call,prototype) 需要的朋友可以过来参考下,希望对大家有所帮助 一,js中对象继承   js中有三种继承方式   1.js原型(prototype)实现继承   代码如下: <SPAN style="BACKGROUND-COLOR: #ffffff"><SPAN style="FONT-SIZE: 18px"><html>   <body>  

excel中函数lookup查询函数用法详细步骤实例

  excel中lookup查找函数用法详细步骤实例,函数的工作原理是在第二个参数(区域,一般是一列)中查找第一个参数(一般为单元格值),找到首个大于第一个参数时,函数返回找到的上方位置,对应的第三个参数的值. 如果第二个参数升序排列,可以直接说是返回小于等于第一个参数的最大值. 一般情况下都需要将第二个参数升序排列,函数才有现实意义. 方法/步骤 如图红框内部是不同的身高区间对应的尺码型号. 在红框所示的单元格内输入=lookup(),当光标在括号外部闪烁时,鼠标点一下括号内部,此时光标会在括

js中split和replace的用法实例

 这篇文章主要介绍了js中split和replace的用法,实例分析了split和replace的功能及使用技巧,需要的朋友可以参考下     本文实例讲述了js中split和replace的用法.分享给大家供大家参考.具体分析如下: 1. split : 代码如下: <html> <head> <title> 从业人员继续教育报名列表--打印签到表 sdfsd</tr><tr></tr> sdfsd </title> &

js中substring和substr的用法比较

原文:js中substring和substr的用法比较 推荐使用substring 方法   stringObject.substring(start,stop)   stringObject.substr(start,length)   定义和用法 提取字符串中两个指定的索引号之间的字符. substring() 方法用于提取字符串中介于两个指定下标之间的字符.   从起始索引号提取字符串中指定数目的字符. substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符.