本文探讨JavaScript的三大部分中的两个部分,DOM和BOM。

DOM介绍

  DOM,全称Document Object Model,即文档对象模型。它

是W3C的一个标准,定义了一个对文档操作的标准,给了编程人员

专业的操作方式。

  DOM的节点:DOM的节点主要有文档节点、元素节点、文本节

点、属性节点、注释节点。开发人员可以通过节点类型来检验一个

HTML文档中还有多少某种类型的节点。

Example:

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>nodeType</title>
</head>
<body>
<h1>This is a headline.</h1>
<p>This a paragraph.</p>
<a href="#"></a>
<script>
function elements(node)
{
var num=0;
if(node.nodeType==1)
{
num++;
}
var nodeson=node.childNodes;
for(var i=1;i<nodeson.length;i++)
{
num+=elements(nodeson[i]);
}
return num;
}
console.log("这里有"+elements(document)+"个HTML元素");
</script>
</body>
</html>

通过nodeType函数可以得到各种类型节点的返回值,用遍历的方

式将HTML文件的元素个数记录下来实现统计元素。

  DOM访问文档元素有3种方式。

  ①getElementById("element");返回id属性的元素。通过给标

签增添Id属性,精确的操作指定元素。

  ②getElementByTagName("tag");返回指定标签元素。对该

类型的元素进行操作。

  ③getElementByName("name");返回name属性的元素。

  DOM是一个庞大的W3C文档对象操作标准。更多的内容需要

对DOM不断的学习、实践,才能掌握。

BOM介绍

  BOM是The Browser Object Model的缩写,其含义为浏览

器对象模型。JavaScript通过它来实现与浏览器之间的交互。它由多

个对象组成,其中window是代表浏览器窗口的BOM顶层对象,其

余对象为它的子对象。BOM的一大缺点是缺乏标准,但是它广泛应

用在前端开发中,大多数浏览器都支持。

  BOM的对象。BOM的对象有多个,主要有window对象(包括

window、self、parent、top等),navigator对象,location对象,

history对象,document对象,screen对象。window对象:它是客

户端JavaScript的顶层对象,可以通过语句让浏览器发出弹窗;navi-

-gator对象:是操作客户端浏览器信息的对象,能够获取浏览器信息;

location对象:当前网页的URL信息,可以实现定位;history对象:

浏览器的历史访问URL;document对象:被用来访问文档内容及所有

元素;screen对象:浏览器客户端显示屏的信息。

关于JavaScript的DOM和BOM的更多相关文章

  1. 【JavaScript】DOM和BOM之我的理解

    2018年12月17日 一.我们能够对html文档和浏览器做的操作 (一)html文档 增.删.改.可以在html中增加.删除.改动元素 (二)浏览器 地址栏:输入.修改地址 历史记录:前进.后退.跳 ...

  2. JAVAScript中DOM与BOM的差异分析

    JAVAScript 有三部分构成,ECMAScript,DOM和BOM,根据浏览器的不同,具体的表现形式也不尽相同.我们今天来谈一谈DOM和BOM这俩者之间的差异. 用百科上的来说: 1. DOM是 ...

  3. JavaScript组成—— DOM、BOM、ECMAScript

    ECMAScript是JS的核心:提供核心语言功能 DOM(文档对象模型):提供访问和操作网页内容的方法和接口 BOM(浏览器对象模型):提供与浏览器交互的方法和接口 1. DOM(文档对象模型) 1 ...

  4. web开发:javascript之dom与bom

    一.节点认知 二.文档结构 三.文档节点操作 四.事件target 五.BOM操作 一.节点认知 - dom与dom属性 <!DOCTYPE html> <html> < ...

  5. JavaScript 之 DOM 与 BOM

    DOM是文档对象模型,用来获取或设置文档中标签的属性,例如获取或者设置input表单的value值. 由于DOM的操作对象是文档(Document),所以dom和浏览器没有直接关系. BOM是浏览器对 ...

  6. JavaScript中DOM与BOM的区别

    1.BOM BOM全称为Brower Object Model,中文翻译为浏览器对象模型,提供了独立于内容而与浏览器窗口进行交互的对象.描述了与浏览器进行交互的方法和接口.通过BOM可以用来获取或设置 ...

  7. 【JavaScript】DOM之BOM

    BOM 1.BOM是什么 提供了独立页面内容,与浏览器相关的一系列对象,管理窗口之间通信 2.Window对象 具有双重角色,对象即是允许JS访问浏览器窗口的一个对象,和ECMAScript规范中的G ...

  8. javascript、ECMAScript、DOM、BOM关系

    ECMAScript,正式名称为 ECMA 262 和 ISO/IEC 16262,是宿主环境中脚本语言的国际 Web 标准. ECMAScript 规范定义了一种脚本语言实现应该包含的内容:但是,因 ...

  9. 理清javascript的相关概念 DOM和BOM

    javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异.JavaScript=语法+BOM(含DOM) ...

随机推荐

  1. js菜单栏切换

    先来看看需要实现的需求: 这是某购物网站上经常看到的效果 我们把网页的模型抽象出来,下面是我实现的效果图: 源代码仅供大家参考,具体如下: <!DOCTYPE html> <html ...

  2. Flutter中Expanded组件用法

    Flutter中Expanded组件用法 Expanded组件可以使Row.Column.Flex等子组件在其主轴方向上展开并填充可用空间(例如,Row在水平方向,Column在垂直方向).如果多个子 ...

  3. 2018铁人三项测评题 IOS99

    下面这一部分是我从网上复制过来的, 2.IOS 解题链接:http://ctf4.shiyanbar.com/web/IOS/index.php 这题页面中提示系统升级到了IOS99,我们可以想到修改 ...

  4. 利用cuteftp上传并修改网站上内容

    1.下载cuteftp 2.在host中输入网址(如:219.142.121.2) 3.username中输入(如:BNULS) 4.passpord中输入:(如410teamgood) 5.端口输入 ...

  5. 使用redis的zset实现高效分页查询(附完整代码)

    一.需求 移动端系统里有用户和文章,文章可设置权限对部分用户开放.现要实现的功能是,用户浏览自己能看的最新文章,并可以上滑分页查看. 二.数据库表设计 涉及到的数据库表有:用户表TbUser.文章表T ...

  6. 做前端的你还没用这些软件?? out 啦

    1. 编辑器 写代码只是生产软件过程中的一环.无论是数据结构.编译原理.操作系统还是组成原理都是编码的重要基础,试问没有学过编译原理的人能够针对性地进行编译优化吗?不懂操作系统的人能玩得转linux吗 ...

  7. HTTP1.1

    读了一本图解http,总结一下子. 1 .重要的头部   1.TCP/IP 通信传输流 五层模型 先盗个图,重点说明每过一层都会加个头,头很重要啊!其中https 就是在传输层搞事,把本来明文的数据包 ...

  8. python对象的初始化

    效果图: 代码: # 对象的初始化 class Person: # 在类中可以定义一些特殊方法(魔术方法) # 特殊方法都是以__开头,__结尾的方法 前后都是两个下划线 # 特殊方法会在特殊的时刻自 ...

  9. P1551 亲戚 并查集

    P1551 亲戚 题目背景 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系. 题目描述 规定:x和y是亲戚,y和z是亲戚,那么 ...

  10. 理解setTimeout()

    之前在网上看了很多关于setTimeout的文章,但我感觉都只是点到为止,并没有较深入的去剖析,也可能是我脑袋瓜笨,不容易被点解.后面看了<你不知道的javascript-上卷>一书,决定 ...