DOM页面是什么 dom是什么意思啊( 二 )


replaceChild()方法可以替换节点,接受两个参数,需要插入的节点和需要替换的节点 。返回被替换掉的节点 。
removeChild()移除节点 。这里有个常见需求,比如我有一个节点 #waste-node ,那么如何移除它呢?
var wasteNode = document.getElementById("waste-node");wasteNode.parentNode.removeClhid(wasteNode); // 先拿到父节点,再调用removeClild删除自己 这里先暂停一下,不知道大家注意到没有,以上的几个方法都是操作某个节点的子节点,也就是说,操作前必须找到父节点(通过parentNode来找)
接下来说下复制节点的方法:
cloneNode();复制节点,接受一个参数 true或者false 。如果true就是复制那个节点和它的子节点 。如果是false,就是复制节点本身(复制出来的节点就会没有任何子元素) 。这个方法返回复制的节点,如果需要操作它,那么需要借助前面讲的4个方法来把这个节点放入到html中去 。
至此,Node类型的常见属性和方法都介绍完了 。结合开头讲的,所有节点类型都继承自Node类型,所以这些方法是所有节点都有的 。
三、Document类型
最开始讲DOM是什么的时候提到了Document类型 。其实关于这个类型最重要的是它的一个子类HTMLDocument有一个实例对象document 。而这个document对象是我们最常用的一个对象了 。
document对象又挂载在window对象上,所以在浏览器就可以直接访问document了 。
老规矩,先讲讲document对象的属性,等会讲讲它的方法 。
document对象上的一些属性
document.childNodes 继承自上面讲的Node类型,可以返回文档的直接子节点(通常包括文档声明和html节点)
document.documentElement 可以直接拿到html节点的引用(等价于
document.getElementsByTagName(“html”)[0]) 。
document.body body节点的引用
document.title 页面的title,可以修改,会改变浏览器标签上的名字
document.URL 页面的url
document.referrer 取得referrer,也就是打开这个页面的那个页面的地址,做来源统计时候比较有用
document.domain 取得域名,可以设置,但是通常只能设置为不包含子域名的情况,在一些子域名跨域情况下有效 。
接下来介绍两个熟悉的方法
getElementById 和 getElementsByTagName
getElementById,传入id,得到元素节点 。里面的参数区分大小写(IE8-不区分) 。注意:如果有多个id相同的元素,则返回第一个 。IE7-里面表单元素的name也会被当做id来使用 。
getElementsByTagName 根据标签取得元素,得到的是HTMLCollection类型 。如果传入的是 “” ,则可以取得全部元素 。*
还有一个是只有HTMLDocument类型(也就是document对象)才有的方法 getElementsByName 顾名思义,根据name返回元素 。
document对象还有一些集合,例如document.forms 可以返回所有的form表单 。类型也是HTMLCollection 。
说到HTMLCollection,就再说说它
HTMLCollection就是一个包含一个或多个元素的集合,和上面讲的NodeList还挺像的 。HTMLCollection这个类型有两个方法,一个是通过下标(或者.item())得到具体元素,还有就是通过[‘name’](或者.namedItem())获得具体元素 。
最后,关于document对象还有一套重要的方法,那便是
write() writeln() open() close()
open和close分别是打开和关闭网页的输出流,在页面加载过程中,就相当于open状态 。这两个方法一般不会去用它 。
然后重要的方法就是write和writeln,它们都是向页面写入东西,区别就是后者会多加入一个换行符 。
注意的是:在页面加载的过程中,可以使用这两个方法向页面添加内容 。如果页面已经加载完了,再调用write,会重写整个页面 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: