Html页面Dom对象之Document
Document 对象
每个载入浏览器的 HTML 文档都会成为 Document 对象。
Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问。
提示:Document 对象是 Window 对象的一部分,可通过 window.document 属性对其进行访问。
Document 对象集合
| 集合 | 描述 |
|---|---|
| all[] | 提供对文档中所有 HTML 元素的访问。 |
| anchors[] | 返回对文档中所有 Anchor 对象的引用。 |
| applets | 返回对文档中所有 Applet 对象的引用。 |
| forms[] | 返回对文档中所有 Form 对象引用。 |
| images[] | 返回对文档中所有 Image 对象引用。 |
| links[] | 返回对文档中所有 Area 和 Link 对象引用。 |
Document 对象属性
| 属性 | 描述 |
|---|---|
| body |
提供对 <body> 元素的直接访问。 对于定义了框架集的文档,该属性引用最外层的 <frameset>。 |
| cookie | 设置或返回与当前文档有关的所有 cookie。 |
| domain | 返回当前文档的域名。 |
| lastModified | 返回文档被最后修改的日期和时间。 |
| referrer | 返回载入当前文档的文档的 URL。 |
| title | 返回当前文档的标题。 |
| URL | 返回当前文档的 URL。 |
Document 对象方法
| 方法 | 描述 |
|---|---|
| close() | 关闭用 document.open() 方法打开的输出流,并显示选定的数据。 |
| getElementById() | 返回对拥有指定 id 的第一个对象的引用。 |
| getElementsByName() | 返回带有指定名称的对象集合。 |
| getElementsByTagName() | 返回带有指定标签名的对象集合。 |
| open() | 打开一个流,以收集来自任何 document.write() 或 document.writeln() 方法的输出。 |
| write() | 向文档写 HTML 表达式 或 JavaScript 代码。 |
| writeln() | 等同于 write() 方法,不同的是在每个表达式之后写一个换行符。 |
一:Dom模型的全称--->Document Object Model
---->文档对象模型
二WEB页面的html文档,document就是根节点。其他的子对象就是子节点
三节点类型 (1)元素节点 例子:<input>
(2)文本节点 例子:尚晓飞 文本节点
(3)属性节点 例子:<input type="shang"/> shang 就是属性节点
四获取元素节点的方法
【1】直接获取节点:
(1)获取指定的id属性指定值的节点-->唯一
var name=document.getElementById("uname");
(2)获取指定的name属性值的节点--->返回的是一组
var ad=document.getElementsByName("unameName");
(3)获取指定元素名的节点--->返回的是一组
var aaa=document.getElementsByTagName("input");
【2】间接获取节点
(1)通过父节点,获取子节点。
//获取父节点
var father=document.getElementById("showDiv");
//获取该父节点的子节点node集合
var sonarray=father.childNodes;
alert(array[2].nodeValue);
(2)通过字节点,获取父节点
//通过子节点,获取父节点
var son=document.getElementById("a");
var fathera=son.parentNode;
alert(fathera.id);
(3)通过兄弟节点,获取节点
//兄弟节点
var borther2=document.getElementById("realname");
var borther1=borther2.previousSibling;//上一个兄弟节点
var borther3=borther2.nextSibling;//下一个兄弟节点
while(borther1.nodeType!=1){
borther1=borther1.previousSibling;
}
alert(borther1.value);
注意:节点的三个属性 ---->nodeName
----->nodeValue
----->nodeType
四:处理属性节点
(1)元素节点.属性----->获取属性值,也可以为属性重新赋值
(2)getAttribute(key)--->获取key属性的值
setAttribute(key,value)--->为该节点设置属性,及属性的值
五:处理文本节点
(1)获取一个节点内的文本,一般使用innerHtml
(2)innerHtml不局限操作一个节点,而是可以使用Html片段直接填充页面,或直接获取Html片段。大大提高开发的灵活性
例子: function innerhtml(){
alert(document.getElementById("showDiv").innerHTML);
}
六 改变文档的层次结构
(1)创建元素节点document.creatElement
var input=document.createElement("input");
input.type="text";
input.id="123";
input.value="天下无双";
(2)通过父节点,添加到父节点里。parentNode.appendChild
var father=document.getElementById("showDiv");
father.appendChild(input);
(3)插入节点 parentNode.insertBefore(newnode,beforenode)
var ab=document.getElementById("a");
father.insertBefore(input,ab);
(4)覆盖节点 parentNode.replaceChild(newnode,oldnode)
旧节点必须存在,否则发生异常
father.replaceChild(input,ab);
(5)移除某个节点parentNode.removeChild(childNode)
father.removeChild(ab)
Html页面Dom对象之Document的更多相关文章
- DOM对象之document对象
DOM对象:当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). HTML DOM 模型被构造为对象的树. 打开网页后,首先看到的是浏览器窗口,即顶层的win ...
- Html页面Dom对象之Event
HTML DOM Event 对象 实例 哪个鼠标按钮被点击? 光标的坐标是? 被按的按键的 unicode 是? 相对于屏幕,光标的坐标是? shift 键被按了吗? 哪个元素被点击了? 哪个事件类 ...
- DOM 对象之 document.all
1.document.all是页面内所有元素的一个集合: 2.经测试在chrome,safari,opera,ie中均返回一个HTMLALLCollection[xx]对象,在FF中返回是一个unde ...
- Html页面Dom对象之Element
HTML DOM Element 对象 HTML DOM 节点 在 HTML DOM (文档对象模型)中,每个部分都是节点: 文档本身是文档节点 所有 HTML 元素是元素节点 所有 HTML 属性是 ...
- JavaScript对象之document对象
DOM对象之document对象 DOM对象:当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). HTML DOM 模型被构造为对象的树. 打开网页后,首先 ...
- JS--dom对象:document object model文档对象模型
dom对象:document object model文档对象模型 文档:超文本标记文档 html xml 对象:提供了属性和方法 模型:使用属性和方法操作超文本标记性文档 可以使用js里面的DOM提 ...
- JavaScript学习-4——DOM对象、事件
本章目录 --------window对象 --------document对象 --------事件 一.window对象 函数调用: 自己封装的函数只写:函数名(): 数学函数Math 例:绝对值 ...
- HTML:DOM 对象
ylbtech-HTML:DOM 对象 1. Document 对象返回顶部 1-1. Document 对象 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对 ...
- JavaScript BOM DOM 对象
title: JavaScript BOM DOM 对象 tags: JavaScript --- browser object model document onject model BOM对象 w ...
随机推荐
- CentOS Redhat Linux安装 Oracle Client 的注意点
1) 安装文件要拷贝到本地文件系统执行 2) 虽然不知道 libXmu是什么,但是安装之后,关联包安装了许多,感觉很省心 yum install libXmu.i686 3) 还有找不到的包的话,用 ...
- 详解Mybatis通用Mapper介绍与使用
使用Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQL.而且,当数据库表结构改动时,对应的所有SQL以及 ...
- CSS#Flex-box, border-size, onresize() event, Media Queries
Flexbox Pseudo-classes box-sizing: border-box HTML DOM event resize() @media Queries: 根据一些css条件,触发一 ...
- 12月8日 周五 image_tag.
Overview of helpers provided by Action View 6.1 AssetTagHelper:用于generate html语言 image_tag ,return a ...
- 使用Bulk Binding批量绑定的模式高效处理ORACLE大量数据
用批量绑定(bulk binding)的方式.当循环执行一个绑定变量的sql语句时候,在PL/SQL 和SQL引擎(engines)中,会发生大量的上下文切换(context switc ...
- 使用 PM2 管理nodejs进程
pm2 是一个带有负载均衡功能的Node应用的进程管理器. 当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的. 它非常适合IaaS结构,但不要把它 ...
- OC 对象和函数
#import <Foundation/Foundation.h> @interface Car : NSObject {// 成员变量 @public int wheels; int s ...
- idea破解更新
idea破解教程: https://www.cnblogs.com/jpfss/p/8872358.html JetbrainsCrack-3.1-release-enc.jar下载:http://i ...
- spring boot 学习(九)小工具篇:?秒防刷新
注解 + 拦截器:?秒防刷新 小工具篇:工具许多都是我以前在 github 之类开源平台找到的小工具类,作者的信息什么的许多都忘了.先说声不好意思了.若有相关信息,麻烦提醒一下~ 解释 所谓的?秒防刷 ...
- C++实现Vector容器的基本功能
本文只实现了Vector的默认构造函数.赋值构造函数.赋值函数.析构函数.重置空间大小函数和插入函数,权当起到抛砖引玉的作用,其他函数功能的实现可在此基础之上进行拓展. #include <io ...