博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript之DOM技术(一)
阅读量:2355 次
发布时间:2019-05-10

本文共 1509 字,大约阅读时间需要 5 分钟。


None.gifTEXT_NODE                                         3

None.gifCDATA_SECTION_NODE                 4

None.gifENTITY_REFERENCE_NODE            5

None.gifENTITY_NODE                                     6

None.gifPROCESSING_INSTRCTION_NODE       7

None.gifCOMMENT_NODE                              8

None.gifDOCUMENT_NODE                            9

None.gifDOCUMENT_TYPE_NODE               10

None.gifDOCUMENT_FRAGMENT_NODE   11

None.gifNOTATION_NODE                              12

IE6不支持,不过你可以自定义一个JS对象Node。


3.处理特性

处理特性可以使用标准的NameNodeMap中的方法:

getNamedItem(name) removeNamedItem(name)  setNamedItem(node)    item(pos)


比如:<p id="test">测试</p>

假设变量oP是上面的p节点的引用,我们要访问oP的id属性:

var sId=oP.attributes.getNamedItem("id").nodeValue;


这些方法用起来很累赘,所以DOM又定义了三个方法来简化:

getAttribute(name)         ——返回名称为name的属性的值

setAttribute(name,value)   ——顾名思义

removeAttribute(name)      ——顾名思义  


上面的例子可以改写为:

var sId=oP.getAttribute("name");


4.访问指定节点:

熟知的getElementByTagName(name),getElementByName(name),getElementById(id)三个方法,不再展开。


5.创建和操作节点:

(1)创建新节点,一张IE(6.0)和FF对DOM Level1的创建新节点方法支持的对照表:

None.gif方法                                                               IE                               FF

None.gifcreateAttribute(name)                                 Y                                Y

None.gifcreateCDATASection(text)                        N                                Y

None.gifcreateComment(text)                                    Y                                Y

None.gifcreateDocumentFragment()                        Y                                Y

None.gifcreateElement(tagName)                             Y                                 Y

None.gifcreateEntityReference(name)                     N                                 Y

None.gifcreateProcessingInstruction(

None.giftarget,data)                                                   N                                  Y

None.gifcreateTextNode(text)                                  Y                                   Y


下面介绍常用的几个方法


(2)createElement(),createTextNode(),appendChild()

例子:

None.gif<html>

None.gif    <head>

None.gif        <title>createElement() Example</title>

None.gif        <script type="text/javascript">

ExpandedBlockStart.gif            
function createMessage() 
{

InBlock.gif                var oP = document.createElement("p");
InBlock.gif                var oText = document.createTextNode("Hello World!");
InBlock.gif                oP.appendChild(oText);
InBlock.gif                document.body.appendChild(oP);
ExpandedBlockEnd.gif            }

None.gif        </script>

None.gif    </head>

None.gif    <body οnlοad="createMessage()">

None.gif    </body>

None.gif</html>

None.gif

在页面载入后,创建节点oP,并创建一个文本节点oText,oText通过appendChild方法附加在oP节点上,为了实际显示出来,将oP节点通过appendChild方法附加在body节点上。此例子将显示Hello World!

转载地址:http://tdktb.baihongyu.com/

你可能感兴趣的文章
Redis 方案
查看>>
ZooKeeper 数据与存储配置
查看>>
ZooKeeper 安装部署
查看>>
ZooKeeper 配置
查看>>
11.组合模式--Composite
查看>>
12.轻量模式--Flyweight
查看>>
13.外观模式--Facade
查看>>
开源史上最成功的八个开源软件
查看>>
More Effective C++读书笔记
查看>>
关于assert,ASSERT,TRACE和VERIFY
查看>>
关于C++中野指针的说明
查看>>
Linux/Unix环境下的make和makefile详解
查看>>
SourceInsight添加对汇编语言文件.s和.S的支持
查看>>
windows 下实现函数打桩:拦截API方式
查看>>
获取Windows系统版本
查看>>
漫谈兼容内核之十二:Windows的APC机制
查看>>
21.windbg-.lastevent、!analyze(dump分析、异常错误码查询)
查看>>
16.windbg-.frame、dt(切换局部上下文、查找结构体)
查看>>
开源任务管理器 Process Hacker (Windows)
查看>>
快速发现Windows中毒的工具:Process Hacker
查看>>