`
jamm19860411
  • 浏览: 85202 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

DOM对象的常用方法(自己总结觉得有用的)

阅读更多
DOM结构——两个节点之间可能存在哪些关系以及如何在节点之间任意移动?
document.documentElement     返回文档的根节点<html>
-----------------------------------------------------------------------------
document.body     <body>
-----------------------------------------------------------------------------
document.activeElement 返回当前文档中被击活的标签节点(ie)
-----------------------------------------------------------------------------
event.fromElement        返回鼠标移出的源节点(ie)
-----------------------------------------------------------------------------
event.toElement       返回鼠标移入的源节点(ie)
-----------------------------------------------------------------------------
event.srcElement     返回激活事件的源节点(ie)
event.target         返回激活事件的源节点(firefox)
------------------------------------
当前对象为node
返回父节点:node.parentNode, node.parendElement,
返回所有子节点:node.childNodes(包含文本节点及标签节点),node.children
返回第一个子节点:node.firstChild
返回最后一个子节点: node.lastChild

返回同属上一个子节点:node.nextSibling
返回同属下一个子节点:node.previousSibling
parentNode和parentElement功能一样,childNodes和children功能一样。但是parentNode和childNodes是符合W3C标准的,可以说比较通用。而另外两个只是IE支持,不是标准,Firefox就不支持 ,所以大家只要记得有parentElement和children就行了
------------------------------
节点的操作:
创建节点: document.createElement("div");//好像大都只能用document,不知道还能换成什么
  document.createTextNode("fdsafdas");
还有一个创建节点碎片: document.createDocumentFragment();(可以用来减少页面多次刷新)
例如:
var oFragmeng = document.createDocumentFragment();  //先创建文档碎片 
for(var i=0;i<10000;i++){ 
  var op = document.createElement("span"); 
  var oText = document.createTextNode(i); 
  op.appendChild(oText); 
  oFragmeng.appendChild(op); //先附加在文档碎片中 

document.body.appendChild(oFragmeng);//最后一次性添加到document中
常用的添加节点:
pnode.appendChild(node);//在节点pnode的子节点后追加node子节点
pnode.insertBefore(newChild, oldChild);//在现有的子节点前插入一个新的子节点
//newChild作为的pnode的子节点插入到其子节点oldChild之前
oldChild为可选项参数,当为null时其效果与appendChild一样,记住这句话,两个参数就不会记倒了
这里注意可没有pnode.insertAfter(),只能自己定义
删除节点: pnode.removeChild(node)
复制节点: pnode.cloneNode(include_all); //include_all为true时,则同时复制所有子节点,为false时,则只复制该节点(注意id也会被复制)
替换节点: pnode.replaceChild(newnode,oldchild)
访问节点::
访问html元素:var oHtml=document.documentElement;
获取head元素:var oHead=oHtml.firstChild;
获取body元素:var oBody=oHtml.lastChild; 或者 var oBody=document.body;

也可以通过childNodes来做同样的工作:
var oHead=oHtml.childNodes[0] 或者 oHtml.childNodes.item(0);
var oBody=oHtml.childNodes[1] 或者 oHtml.childNodes.item(1);

判断节点间关系:
alert(oHead.parentNode==oHtml); 
alert(oBody.previousSibling==oHead);
alert(oHead.nextSibling==oBody);
alert(oHead.ownerDocument==document);

访问指定节点:
熟知的getElementsByTagName(name),getElementsByName(name),getElementById(id)三个方法,不再展开。

属性操作:
getAttribute(name)         ——返回名称为name的属性的值
setAttribute(name,value) ——顾名思义
removeAttribute(name)    ——顾名思义

为了简化创建表格,HTML DOM提供了一系列的表格方法,常用几个:
cells ——返回</tr>元素中的所有单元格
rows   ——表格中所有行的集合
insertRow(position) ——在rows集合中指定位置插入新行
deleteRow(position) ——与insertRow相反
insertCell(position) ——在cells集合的指定位置插入一个新的单元格
deleteCell(position) ——与insertCell相反
分享到:
评论

相关推荐

    最新jQuery常用技巧 超赞!

    最新!最有用!最牛B! 1、关于页面元素的引用 通过jquery的$()引用元素包括通过id、class、...注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象。 普通的dom对象一般可..........

    jQuery常用功能大全

    2、jQuery对象与dom对象的转换; 3、如何获取jQuery集合的某一项; 4、同一函数实现set和get; 5、集合处理功能; 6、扩展我们需要的功能; 7、支持方法的连写; 8、操作元素的样式; 9、完善的事件处理功能; 10、...

    jQuery常用功能大全(完整版)

    2、jQuery对象与dom对象的转换; 3、如何获取jQuery集合的某一项; 4、同一函数实现set和get; 5、集合处理功能; 6、扩展我们需要的功能; 7、支持方法的连写; 8、操作元素的样式; 9、完善的事件处理功能...

    java 面试题 总结

    wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。 14、Overload...

    java解析xml及4种常用解析比较

    由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM以及广义的基于树的处理具有几个优点。首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。它还可以在任何时候在树...

    超级有影响力霸气的Java面试题大全文档

    wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。 17、...

    JAVA_API1.6文档(中文)

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代...

    DWR.xml配置文件说明书(含源码)

    DWR 自动将DOM、DOM4J、JDOM和XOM转换成DOM树,前面这几种类型都仅仅返回Document,Element,Node.DWR会自动将这些转换成浏览器DOM对象.通常在启动JDOM Converter时会有一个提示信息,除非你想采用JDOMconverter否则可以...

    java api最新7.0

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代称为 ...

    ExtJSWeb应用程序开发指南(第2版)

    6.8 Ext.util.Format提供常用的格式化方法 6.8.1 ellipsis() 6.8.2 capitalize() 6.8.3 date() 6.8.4 htmlEncode() 6.8.5 htmlDecode() 6.8.6 stripTags() 6.8.7 substr() 6.8.8 lowercase...

    [Java参考文档]

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代...

    JavaAPI1.6中文chm文档 part1

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代...

    JavaAPI中文chm文档 part2

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代...

    Selenium.HtmlElements.Net:Selenium.WebDriver的元素模型

    它还为常用HTML元素(链接,输入字段,图像,框架等),备用等待语法,智能框架和一些其他有用的实用程序提供了一组标准页面对象。 您可以通过安装 nuget软件包将其添加到项目中。 可以在找到更多信息。Web组件...

    [Java参考文档].JDK_API 1.6

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代称为 ...

    Java 1.6 API 中文 New

    javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代称为 ...

    js_knowledge

    :male_sign:‍:male_sign: js_knowledge如果我在编写javascript-solution时没有回去 :check_mark: 异步并等待与地图功能==&gt; Promise.all :check_mark: 知道有用的代码清除-...常用方法摘要js备忘录,forEach比map更快

Global site tag (gtag.js) - Google Analytics