关于JavaScript的DOM和BOM
本文探讨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的更多相关文章
- 【JavaScript】DOM和BOM之我的理解
2018年12月17日 一.我们能够对html文档和浏览器做的操作 (一)html文档 增.删.改.可以在html中增加.删除.改动元素 (二)浏览器 地址栏:输入.修改地址 历史记录:前进.后退.跳 ...
- JAVAScript中DOM与BOM的差异分析
JAVAScript 有三部分构成,ECMAScript,DOM和BOM,根据浏览器的不同,具体的表现形式也不尽相同.我们今天来谈一谈DOM和BOM这俩者之间的差异. 用百科上的来说: 1. DOM是 ...
- JavaScript组成—— DOM、BOM、ECMAScript
ECMAScript是JS的核心:提供核心语言功能 DOM(文档对象模型):提供访问和操作网页内容的方法和接口 BOM(浏览器对象模型):提供与浏览器交互的方法和接口 1. DOM(文档对象模型) 1 ...
- web开发:javascript之dom与bom
一.节点认知 二.文档结构 三.文档节点操作 四.事件target 五.BOM操作 一.节点认知 - dom与dom属性 <!DOCTYPE html> <html> < ...
- JavaScript 之 DOM 与 BOM
DOM是文档对象模型,用来获取或设置文档中标签的属性,例如获取或者设置input表单的value值. 由于DOM的操作对象是文档(Document),所以dom和浏览器没有直接关系. BOM是浏览器对 ...
- JavaScript中DOM与BOM的区别
1.BOM BOM全称为Brower Object Model,中文翻译为浏览器对象模型,提供了独立于内容而与浏览器窗口进行交互的对象.描述了与浏览器进行交互的方法和接口.通过BOM可以用来获取或设置 ...
- 【JavaScript】DOM之BOM
BOM 1.BOM是什么 提供了独立页面内容,与浏览器相关的一系列对象,管理窗口之间通信 2.Window对象 具有双重角色,对象即是允许JS访问浏览器窗口的一个对象,和ECMAScript规范中的G ...
- javascript、ECMAScript、DOM、BOM关系
ECMAScript,正式名称为 ECMA 262 和 ISO/IEC 16262,是宿主环境中脚本语言的国际 Web 标准. ECMAScript 规范定义了一种脚本语言实现应该包含的内容:但是,因 ...
- 理清javascript的相关概念 DOM和BOM
javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异.JavaScript=语法+BOM(含DOM) ...
随机推荐
- ELK日志分析系统搭建
之前一段时间由于版本迭代任务紧,组内代码质量不尽如人意.接二连三的被测试提醒后台错误之后, 我们决定搭建一个后台日志分析系统, 经过几个方案比较后,选择的相对更简单的ELK方案. ELK 是Elast ...
- java基础之----redi分布式锁
最近项目中,用到了redis分布式锁,使用过程有些心得,所以希望分享给大家. 首先我们意识里要知道分布锁有哪些? 分布式锁一般分三种,基于数据库的乐观锁,基于redis的分布式锁,基于zookeper ...
- Flutter 不能热加载,热重载按钮灰色,无法点击,flutter doctor 显示NO_PROXY is not set
一.现象: Flutter 不能热加载 热重载按钮灰色,无法点击. 二.分析原因: 终端 flutter doctor 显示 NO_PROXY is not set 没有设置无代理的端口 终端:flu ...
- C#调用Fortran生成的DLL的方法报内存不足
最近在研究一个程序,公司给的,程序是VB写的,程序里面还有一个计算的模型,用Fortran语言写的. 在调试到这个模型里面的方法时报错,说是内存不足,于是就在网上查找方法,看了两篇博客之后问题解决了. ...
- cannot mount volume over existing file, file exists /var/lib/docker/overlay2/.../merged/usr/share/zoneinfo/UTC 解决
问题产生原因: linux系统docker-compose.yml文件 放到 mac本启动发现启动报错 cannot mount volume over existing file, file exi ...
- 简单的c语言程序
我猜大部分人第一门掌握的语言是c语言吧(我第一门学的是python). 在接下来的文章里我会逐步的介绍有关自己对c语言的理解,希望对一些小伙伴有帮助,有哪里有错误希望大佬指出. 首先这是第一个c语言程 ...
- 理解setTimeout()
之前在网上看了很多关于setTimeout的文章,但我感觉都只是点到为止,并没有较深入的去剖析,也可能是我脑袋瓜笨,不容易被点解.后面看了<你不知道的javascript-上卷>一书,决定 ...
- 18个Java8日期处理的实践,对于程序员太有用了!
18个Java8日期处理的实践,对于程序员太有用了! Java 8 推出了全新的日期时间API,在教程中我们将通过一些简单的实例来学习如何使用新API. Java处理日期.日历和时间的方式一直为社区所 ...
- Django redis 应用
一.自定义连接池 与python中使用连接池一样(使用单例对象) 注意:每个视图函数都要有 conn = redis.Redis(connection_pool=POOL) 二.使用第三方模块(dja ...
- php变量中两种特殊类型
第一种----资源 资源(resource):资源是由专门的函数来建立和使用的,例如打开文件.数据连接.图形画布.我们可以对资源进行操作(创建.使用和释放).任何资源,在不需要的时候应该被及时释放.如 ...