html DOM定义了访问和操作html文档的标准;dom是w3c的标准,dom定义了访问html和xml文档的标准:

w3c文档对象模型(dom)是中立平台和语言的接口,它允许程序和脚本动态访问和更新文档内容,结构和样式.

dom标准被分为3个不同部分:

1.核心dom - 针对任何结构化文档的标准模型

2.xml dom - 针对xml文档的标准模型

3.html dom - 针对html文档的标准模型

xml dom定义了xml元素对象和属性,以及访问它们的方法

html dom定义了所有html元素的对象和属性,以及访问它们的方法,换言之,html dom是关于如何获取,修改,添加或删除html元素的标准.

html dom中,所有事物都是节点,dom被视为节点树的html.根据w3c的dom标准,html文档中所有内容都是节点:

1.整个文档是一个文档节点

2.每个html元素是元素节点

3.html元素内的文本是文本节点

4.每个html属性是属性节点

5.注释是注释节点

html dom将html文档视作树结构,这种结构被称为节点树,通过dom,树中所有节点均可通过js访问,所有节点元素均可被修改,也可创建或删除节点.

节点树中的节点彼此拥有层级关系:父,子,同胞等:

1.节点树中,顶端节点称为根

2.每个节点有父节点,除了根

3.一个节点可拥有任意数量的子

4.同胞是拥有相同父节点的节点

dom处理中常见错误是希望元素节点包含文本.

方法是我们可以在节点(html元素)上执行的动作.以下是常用的dom对象方法:

getElementById()方法返回带有指定id的元素

appendChild(node) 插入新的子节点

removeChild(node)删除子节点

下面是常用的dom属性:

innerHTML 节点的文本值

parentNode 节点的父节点

firstChild和lastChild 不用解释吧

childNodes 节点的子节点

attributes 节点的属性节点

length属性定义节点列表中节点的数量

getElementsByTagName 返回带有指定标签的所有元素:

var x = document.getElementsByTagName("p"); 选取文档中的所有<p>节点.可以通过下标访问这些节点比如访问第二个节点:item = x[1];

getElementsByClassName 返回相同类名的所有html元素

html dom允许你在事件发生时执行代码

如果删除html元素,必须清楚该元素的父元素

html dom允许用js向html元素分配事件:

document.getElementById("id").onclick = function(){displayDate()};

以上代码将displayDate函数分配给了id为'id'的html元素的onclick回调.

当用户进入或离开页面时,会触发onload和onunload事件;

onchange事件可以用于输入字段的验证

onmouseover和onmouseout可用于在鼠标指针移动到或离开元素时触发函数;

onmousedown,onmouseup以及onclick事件是鼠标点击全部过程,鼠标按钮点击时触发onmousedown事件,当鼠标松开时触发onmouseup事件,最后当鼠标完成点击时,触发onclick事件.

document.documentElement -  全部文档

document.body - 文档主体

恶补web之七:html DOM知识的更多相关文章

  1. 恶补web之二:css知识(3)

    css有3种定位机制:普通流,浮动和绝对定位. 除非专门指定,否则所有框都在普通流中定位,即普通流中的元素位置由元素在(x)html中的位置决定. 通过使用position属性,可以选择4种不同类型的 ...

  2. 恶补web之二:css知识(2)

    css字体属性定义文本的字体系列,大小,加粗,风格和变形等. css中包含两种字体系列:通用字体系列和特定字体系列. font-family属性定义文本的字体系列: body {font-family ...

  3. 恶补web之二:css知识(1)

    css指层叠样式表(Cascading Style Sheets)     样式定义如何显示html元素,样式通常存储在样式表里.把样式添加到html4.0中,是为了解决内容与表现分离的问题.外部样式 ...

  4. 恶补web之一:html学习(1)

    发现以前欠下的web知识太多鸟,只有重头开始好好学吧,恶补第一站就是html知识啦! html指的是超文本标记语言,它不是编程语言,而是一种标记语言;标记语言是一套标记标签(markup tag),h ...

  5. 恶补web之六:javascript知识(2)

    若要向html添加新元素,必须首先创建该元素,然后向一个已存在的元素追加该元素 <div id="div1"> <p id="p1">这 ...

  6. 恶补web之六:javascript知识(1)

    javascript(下称js)是一种轻量级编程语言,它可以插入html页面然后由浏览器执行. document.write("<h1>...</h1>") ...

  7. 恶补web之八:jQuery(3)

    jquery和其他js框架.jQuery使用$作为jQuery的简写,但是还有很多js框架,比如: MooTools,Backbone,Sammy,Cappuccino,Knockout,JavaSc ...

  8. 恶补web之八:jQuery(2)

    jquery中非常重要的部分,就是操作dom的能力: text() - 设置或返回所选元素的文本内容 html() - 设置或返回所选元素的内容(包括html标记) val() - 设置或返回表单字段 ...

  9. 恶补web之五:dhtml学习

    dhtml是一种使html页面具有动态特性的艺术.对于多数人来说dhtml意味着html(html DOM),样式表和javascript的组合. dhtml不是w3c标准.dhtml指动态html, ...

随机推荐

  1. gitlab的搭建及问题的解决

    gitlab则是类似于github的一个工具,github无法免费建立私有仓库,并且为了代码安全,于是在内网安装了一个自己实验室的一个git服务器,gitlab有很多依赖,而bitnami制作了一键安 ...

  2. NDK在windows下的开发环境搭建及开发过程

    在Android应用的开发工程中,不管是游戏还是普通应用,都时常会用到.so即动态链接库,关于.so是什么玩意儿,有什么好处,这个大家可以在网上查一下,本人不做过多解释..so本是linux下的文件类 ...

  3. iOS 中如何判断当前是2G/3G/4G/5G/WiFi

    5G 什么的,还得等苹果API更新啊,不过将来还是这个处理过程就是了. 关于判断当前的网络环境是2G/3G/4G,这个问题以前经常看到,最近在一工程里看到了如果判断的API.而在撸WebRTC音视频通 ...

  4. 开源项目——小Q聊天机器人V1.4

    小Q聊天机器人V1.0 http://blog.csdn.net/baiyuliang2013/article/details/51386281 小Q聊天机器人V1.1 http://blog.csd ...

  5. Spark 1.0 开发环境构建:maven/sbt/idea

    因为我原来对maven和sbt都不熟悉,因此使用两种方法都编译了一下.下面记录一下编译时候遇到的问题.然后介绍一下如果使用IntelliJ IDEA 13.1构建开发环境. 首先准备java环境和sc ...

  6. Sprite添加阴影摇摆动画(Unity3D开发之九)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=575 今天看到一个很简单的摇摆动 ...

  7. React Native项目组织结构介绍

    代码组织: 目录结构: . ├── components //组成应用的各个组件 │   ├── Routers.android.js //每个组件若实现不一样,分为android的实现和ios的实现 ...

  8. volatile适用场合

    volatile适用场合 要在多线程中安全的适用volatitle变量,必须同时满足:        1.对变量的写入操作不依赖其当前值 不满足:number++.count = count * 5等 ...

  9. Ubuntu 安装 Mysql 5.6 数据库

    Ubuntu 安装 Mysql 5.6 数据库 1)下载: mysql-5.6.13-debian6.0-x86_64.deb http://dev.mysql.com/downloads/mirro ...

  10. javascript之BOM地址栏对象(Location)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...