DOM 操作

DOM是面向HTML和XML文档的API,为文档提供了结构化表示。在DOM中一切都是节点Node,文档就是由许多的Node组成的。文档里的每个节点都有属性 nodeName、nodeValue 和nodeType。Node接口定义了所有节点类型都包含的特性和方法。

特性/方法 类型/返回类型 说明
nodeName String 节点的名字;根据节点的类型而定义
nodeValue String 节点的值;根据节点的类型而定义
nodeType Number 节点的类型常量值之一
ownerDocument Document 指向这个节点所属的文档
firstChild Node 指向在childNodes列表中的第一个节点
lastChild Node 指向在childNodes列表中的最后一个节点
childNodes NodeList 所有子节点的列表
previousSibling Node 指向前一个兄弟节点;如果这个节点就是第一个兄弟节点,那么改值为null
nextSibling Node 指向后一个兄弟节点;如果这个节点就是最后一个兄弟节点,那么改值为null
hasChildNodes() Boolean 当childNodes包含一个或多个节点时,返回真
attributes NamedNodeMap 包含了代表一个元素的特性的Attr对象;仅用于Element节点
appendChild(node) Node 将node添加到childNodes的末尾
removeChild(node) Node 从childNodes中删除node
replaceChild(newnode,oldnode) Node 将childNodes中的oldnode替换成newnode
insertBefore(newnode,refnode) Node 在childNodes中的refnode之前插入newnode

访问指定节点:

getElementsByTagName 返回一个包含tagname(如input)等于某个指定值的所有元素的NodeList
getElementsByName 返回包含name等于某个特定值的所有元素组成的NodeList
getElementById 返回id等于某个值的特定元素

创建新的节点:

createElement 创建元素节点
createTextNode 创建文本节点
appendChild 追加节点

dom树的格式如下:

Document对象

document对象是Window对象的一部分,可通过window.document属性对其进行访问。

document对象集合:

all[] 提供对文档中所有 HTML 元素访问的数组
anchors[] 对文档中所有 Anchor 对象引用的数组
forms[] 对文档中所有 Form 对象引用的数组
images[] 对文档中所有 Image 对象引用的数组
links[] 对文档中所有 Area 和 Link 对象引用的数组

document对象属性:

cookie 设置或得到与当前文档有关的所有 cookie
domain 得到当前文档的域名
lastModified 得到文档被最后修改的日期和时间
referrer 得到载入当前文档的 URL(前一个URL 地址)
title 得到当前文档的标题
URL 得到当前文档的 URL

document对象方法:

getElementById() 根据元素 id 得到元素(第一个)对象
getElementsByName() 根据元素 name 得到元素对象的集合
getElementsByTagName() 根据指定标签名得到元素对象的集合
open() 打开一个数据流,以收集来自任何 document.write() 或 document.writeln() 方法的输出
write() 向文档写 HTML 表达式 或 JavaScript 代码
writeln() 等同于 write() 方法,不同的是在每个表达式之后写一个换行符
close() 关闭用 document.open() 方法打开的输出流,并显示选定的数据

document的body子对象

document.body //指定文档主体的开始和结束,等价于<body>…/<body>
document.body.bgColor //设置或获取对象后面的背景颜色
document.body.link //未点击过的链接颜色
document.body.alink //激活链接(焦点在此链接上)的颜色
document.body.vlink //已点击过的链接颜色
document.body.text //文本色
document.body.innerText //设置<body>…/<body>之间的文本
document.body.innerHTML //设置<body>…/<body>之间的HTML代码
document.body.topMargin //页面上边距
document.body.leftMargin //页面左边距
document.body.rightMargin //页面右边距
document.body.bottomMargin //页面下边距
document.body.background //背景图片

document的location子对象

document.location.hash // #号后的部分
document.location.host // 域名+端口号
document.location.hostname // 域名
document.location.href // 完整URL
document.location.pathname // 目录部分
document.location.port // 端口号
document.location.protocol // 网络协议(http:)
document.location.search // ?号后的部分

BOM和DOM的区别

DOM 描述了处理网页内容的方法和接口;

BOM 描述了与浏览器进行交互的方法和接口。

观察BOM的体系结构,所有的对象都源自window对象,它表示整个浏览器窗口。window对象的函数有:

窗体控制函数  moveBy(),moveTo(),resizeBy(),resizeTo()

窗体滚动轴控制函数  scrollBy(),scrollTo()

焦点控制函数  focus(),blur()

新建窗体函数  open(),close(),opener

对话框函数    alert(),confirm(),prompt()

状态栏属性    status,defaultStatus

时间间隔函数  setTimeout(),clearTimeout(),setInterval(),clearInterval()

Javascript Step by Step - 02的更多相关文章

  1. SQL Server 维护计划实现数据库备份(Step by Step)(转)

    SQL Server 维护计划实现数据库备份(Step by Step) 一.前言 SQL Server 备份和还原全攻略,里面包括了通过SSMS操作还原各种备份文件的图形指导,SQL Server  ...

  2. [ZZ] Understanding 3D rendering step by step with 3DMark11 - BeHardware >> Graphics cards

    http://www.behardware.com/art/lire/845/ --> Understanding 3D rendering step by step with 3DMark11 ...

  3. WinForm RDLC SubReport Step by step

    最近在做的一个PO管理系统,因为要用到订单打印,没有用水晶报表,直接使用VS2010的Reporting.参考了网上的一些文章,但因为找到的数据是用于WebForm的,适配到WinForm有点区别,竟 ...

  4. Step by Step use OBD2 Scanner Guide

    Learning to use a good automotive OBD2 code reader is one of the best ways you can continually inves ...

  5. Step by Step Process of Migrating non-CDBs and PDBs Using ASM for File Storage (Doc ID 1576755.1)

    Step by Step Process of Migrating non-CDBs and PDBs Using ASM for File Storage (Doc ID 1576755.1) AP ...

  6. 稀疏表示step by step(转)

    原文地址:稀疏表示step by step(转)作者:野火春风 稀疏表示step by step(1)     声明:本人属于绝对的新手,刚刚接触“稀疏表示”这个领域.之所以写下以下的若干个连载,是鼓 ...

  7. Step By Step(Lua字符串库)

    Step By Step(Lua字符串库) 1. 基础字符串函数:    字符串库中有一些函数非常简单,如:    1). string.len(s) 返回字符串s的长度:    2). string ...

  8. Step by step Dynamics CRM 2011升级到Dynamics CRM 2013

    原创地址:http://www.cnblogs.com/jfzhu/p/4018153.html 转载请注明出处 (一)检查Customizations 从2011升级到2013有一些legacy f ...

  9. Step by Step 创建一个新的Dynamics CRM Organization

    原创地址:http://www.cnblogs.com/jfzhu/p/4012833.html 转载请注明出处 前面演示过如何安装Dynamics CRM 2013,参见<Step by st ...

  10. Step by step Install a Local Report Server and Remote Report Server Database

    原创地址:http://www.cnblogs.com/jfzhu/p/4012097.html 转载请注明出处 前面的文章<Step by step SQL Server 2012的安装 &g ...

随机推荐

  1. xcode import pod 文件不提示

    在使用第三方类库时,使用cocoaPods是非常方便的,具体使用方法可以参考:CocoaPods安装和使用教程 的安装使用方法.今天讨论的问题是,我在使用的时候遇到了一些问题:用cocoaPod si ...

  2. due to a StackOverflowError. Possible root causes include a too low。。

    我们可以用另外的办法来解决这个问题,我们让tomcat不扫描指定的jar包,tomcat就要轻松得多了,org.apache.tomcat.util.scan.StandardJarScanner中定 ...

  3. Python基础学习-列表的常用方法

    列表方法 = Python 3.5.2 (default, Sep 14 2016, 11:27:58) [GCC 6.2.1 20160901 (Red Hat 6.2.1-1)] on linux ...

  4. cesium 实现路径漫游功能

    功能:路径漫游. 详细:绘制多个路径,删除路径,漫游路径选择,路径漫游. ①绘制路径 ②保存路径 ③路径切换 ④路径漫游 ⑤路径删除 ⑥删除完成

  5. Android开发之动态创建多个按钮

    //获取屏幕大小,以合理设定 按钮 大小及位置 DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDispl ...

  6. prepareStatament和Statement和callableStatement的区别

    关系与区别 Statement.PreparedStatement和CallableStatement都是接口(interface) Statement 1.Statement接口提供了执行语句和获取 ...

  7. [USACO07FEB]银牛派对Silver Cow Party---最短路模板题

    银牛排队 对于我这种蒟蒻来说,还是不要跑一次单元最短路.跑两次好写呀(- ̄▽ ̄)- 而题目中是有向图.如果如果按照题意进行最短路的话.就会出现一个单终点最短路和一个单起点最短路 对于单起点自然就是套模 ...

  8. Makefile 简述

    定义 Linux 环境下的程序员如果不会使用GNU make来构建和管理自己的工程,应该不能算是一个合格的专业程序员,至少不能称得上是 Unix程序员.在 Linux(unix )环境下使用GNU 的 ...

  9. caffe怎么把全连接层转成convolutional层

    caffe中有把fc层转化为conv层的,其实怎么看参数都是不变的,对alex模型来说,第一个fc层的参数是4096X9216,而conv的维度是4096x256x6x6,因此参数个数是不变的,只是需 ...

  10. JS中的var、let、const

    1.var 在全局window中申明则为全局变量,是全局对象 window 的属性. var sum = 0 console.log(window.sum) console.log(sum); 在函数 ...