DOM 在js中的使用(2012.11.30)

来源:互联网 发布:生气 知乎 编辑:程序博客网 时间:2024/06/06 03:59

1.访问文档中的元素
document.getElementById('id');//获取给定id的元素,并将其作为对象。
document.getElementsByTagName('tagname');//获取所有标签名为tagname的元素,并将它保存在一个类似数组的列表中。

2.读取元素的属性、节点值及其他节点数据
var node;
node.getAttribute('attribute');//获取属性名为attribute的值。
node.setAttribute('attribute','value');//设置属性名为attribute的值为value。
node.nodeType;//读取节点类型(1=元素,3=文本节点)
node.nodeName;//读取节点名称(元素名称或#textNode)
node.nodeValue;//读取或设置节点的值(文本节点的情况下则为文本内容)

3.节点之间操作
node.previousSibling;//获取上一个兄弟节点,并将把它保存为一个对象。
node.nextSibling;//获取下一个兄弟节点,并将它保存为一个对象。
node.childNodes;//获取对象的所有子节点,并把他们存储到一个列表中,对于第一个
//和最后一个子节点,还可以使用node.firstChild和node.lastChild进行简写
node.parentNode;//获取包含node的节点

4.创建新节点
var element,oldnode;
document.createElement(element);//创建一个名字为element的新元素,需要提供一个字符串形式的元素名。
document.createTextNode("string");//创建一个节点值为string的文本节点。
var newnode = node.cloneNode(bool);
//创建newnode节点作为node 的副本(克隆)。如果bool值为true,
//这个克隆将包括原节点的所有子节点和属性的克隆
node.appendChild(newnode);//讲newnode作为子节点,添加在node所有子节点之后。
node.insertBefore(newnode,oldnode);//在node节点的子节点oldnode之前插入newnode
node.removeChild(oldnode);//移除node节点的子节点oldnode。
node.replaceChild(newnode,oldnode);//使用节点newnode替换node节点的子节点oldnode。
element.innerHTML;//读写给定element的HTML内容,它是一个字符串,包括所有子节点及他们的属性和文本内容。

网络总结。