js 中的 DOM 和 BOM
BOM浏览器对象模型
概念:Browser Object Model
组成:
Window:浏览器窗口对象
Navigator:浏览器对象
screen:显示器屏幕对象
History:历史记录对象
Location:地址栏对象
Window:浏览器窗口对象
1.创建
不用创建,直接使用Window对象中的属性和方法
2.方法的使用
与弹出框有关的方法
alert() :显示带有一段消息和确认按钮的警告框。
confirm() :重点关注 显示带有一段消息以及确认按钮!取消按钮的对话框。
如果点击确认,那么该方法返回一个true值;如果点击取消,那么该方法返回一个false值prompt():显示可提示用户输入的对话框。
如果点击确认,那么该方法返回输入框中输入的值;如果点击取消,那么该方法就不返回输入框输入的值与打开与关闭浏览器窗口的方法
close() :关闭浏览器窗口。
open():打开一个新的浏览器窗口或查找一个己命名的窗口。
与定时器相关的方法
- setlnterval()按照指定的周期(以毫秒计)来调用函数或计算表达式。
setTimeout()在指定的毫秒数后调用函数或计算表达式。
clearInterval()取消由setInterval()设置的 timeout。
clearTimeout()取消由setTimeout()方法设置的timeout。
3.属性的使用
1.获取其他的BOM对象
- history
- location
- Navigator
- Screen
2.获取DOM对象
- document:文档对象
4.对象的特点
window对象不需要创建,直接使用,window.属性名/方法名,前面的window还可以省略不写
可以通过window对象获取其他的BOM对象和DOM对象
Location地址栏对象
Location对象包含有关当前URL的信息。
1.创建:通过window对象来获取 window.location,前面的window可以省略不写
⒉属性:href设置或返回完整的URL。
3.方法:
1. reload0重新加载当前文档。刷新动作
2. replace():用新的文档替换当前文档。
History历史记录对象
1.创建:通过window对象来换器历史记录对象 window.history,前面的window可以省略不写
2.方法:
forward()加载history列表中的下一个 URL。
back()加载 history 列表中的前一个URL。
go()加载 history列表中的某个具体页面。
3.属性
length返回浏览器历史列表中的URL数量。
DOM对象
Document---文档对象
Element---元素对象
Attribute----属性对象
Text----文本对象
Comment---注释对象- Node----节点对象
XML DOM内容--针对XML文档的标准模型
HTML DOM-针对HTML文档的标准模型
Document文档对象
1.创建
通过window对象获取文档对象 window.document, windom可以省略不写。
2.方法
- 通过Element元素对象:
1.getElementById()通过id名称获取id名称对应的元素对象。ID属性值一般唯一
2.getElementByTagName()通过标签名称获取对应的元素对象。返回的是一个对象数组
3.getElementsByClassName() 通过class属性值获取对应的元素对象数组
4.getElementsByName() 通过name属性值换器对应的元素对象。返回的是一个对象数组
- 创建其他DOM对象
1.createComment() 创建注释节点。
2.createElement()创建元素节点。
3.createTextNode()创建文本节点。
4.createAttribute(name)创建拥有指定名称的属性节点,并返回新的Attry对象。
3.属性
title 返回当前文档的标题。
URL 返回当前文档的 URL。
4.特点
Comment注释对象
Element元素对象
1.创建
有两种方式创建
- 通过文档document的获取元素对象的方法来获取元素对象
- 通过document.createElement() 来创建元素对象
2.方法
3.属性
4.特点
Node节点对象
节点对象可以是元素节点,属性节点,文本节点,任何节点都有父节点和子节点,但是文本节点没有子节点
方法:
CRUD操作 添加节点 删除节点 查找节点 修改节点(替换节点)
- 添加节点 appendChild() 向父节点中添加子节点
- 删除节点 removeChild() 从父节点中删除子节点
- 替换节点 replaceChild() 用一个新节点替换原来的节点
属性:
parentNode:获取子节点的父节点
childNodes: 获取父节点的所有的子节点
firstChild:获取父节点中的第一个子节点
lastChild: 获取父节点中的最后一个子节点
Event 事件对象
概念:某些组件被执行了一些操作,会触发一些功能效果。
事件有几个因素:
事件:某些操作(功能、方法)。如 点击、双击、键盘按下、键盘弹起.......
事件源:组件 被操作的对象 元素/标签 输入框、超链接、按钮.....
监听器:Listener Filter Servlet(服务中间件,桥梁) HTML CSS JS,执行事件的代码
注册监听:将事件、事件源、监听器三者绑定到一起。当事件源上发生了某个事件,则会触发执行某个监听器代码。
常见的事件:
- 点击事件
点击事件: onclick
双击事件: ondblclick
- 焦点事件
获取焦点: onfocus
失去焦点 onblur
加载事件
onload 一个页面或者一张图像完成加载
鼠标事件
鼠标按键按下: onmousedown
鼠标按键松开: onmouseup
鼠标离开: onmouseout
鼠标移动: onmousemove
鼠标悬浮到某元素上:onmouseover
- 键盘事件
键盘按下: onkeydown
键盘松开: onkeyup
键盘按下并松开: onkeypress
- 表单事件
表单提交:onsubmit
表单重置:onreset
- 选择和改变事件
onchange 文本内容发生改变触发
onselect 文本被选中触发
HTML DOM 标签对象
标签体内容获取和设置 属性: innerHTML(可以插入文本内容和标签以及组合标签) innerText(插入文本内容)
使用html标签对象拥有的属性
通过标签对象更改标签的样式: style 通过style属性设置css样式
div.style.border = "1px solid black";
div.style.background = "red";
div.style.backgroundImage = "url(图像路径)"
一般不推荐 使用css代码提前设置
通过className属性给该标签设置对应的class值
js 中的 DOM 和 BOM的更多相关文章
- JS中的DOM与BOM
javascript组成: 1. ECMAScript 基本语法. 2. BOM (浏览器对象模型) 3. DOM (文档对象模型) 一)BOM(borwser Object Model) 浏览器对 ...
- JS中的函数、Bom、DOM及JS事件
本期博主给大家带来JS的函数.Bom.DOM操作,以及JS各种常用的数据类型的相关知识,同时,这也是JavaScript极其重要的部分,博主将详细介绍各种属性的用法和方法. 一.JS中的函数 [函数的 ...
- JS中的函数、BOM和DOM操作
一.JS中的函数 [关于注释] /** [文档注释]:开头两个*.写在函数上方,在调用函数时可以看到文档上方的描述信息. */ // 单行注释 /* 多行注释 */ 1.函数的声明及调用 (1) ...
- 前端(十六)—— JavaScript盒子模型、JS动画、DOM、BOM
JS盒子模型.JS动画.DOM.BOM 一.JS盒模型 1.width | height parseInt(getComputedStyle(ele, null).getPropertyValue(' ...
- js中的DOM操作汇总
一.DOM创建 DOM节点(Node)通常对应于一个标签,一个文本,或者一个HTML属性.DOM节点有一个nodeType属性用来表示当前元素的类型,它是一个整数: Element,元素 Attrib ...
- js中的DOM对象 和 jQuery对象 比较
一,二者的区别 通过 jQuery 获取的元素是一个数组,数组中包含着原生JS中的DOM对象. 总结:jQuery 就是把 DOM 对象重新包装了一下,让其具有了 jQuery 方法. 二,二者的相互 ...
- js中的DOM对象和jQuery对象的比较
1. 二者的不同之处: 通过jQuery获取的元素是一个数组, 数组中包含着原生JS中的DOM对象. 例如, 针对下面的一个div结构: <div id="Box">& ...
- python 全栈开发,Day52(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)
昨日作业讲解: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉, ...
- JS中的循环嵌套 BOM函数
[嵌套循环特点] 外层循环转一次,内层循环转一圈 外层循环控制行数,内层循环控制每行元素个数 [做 ...
随机推荐
- HTTP响应报文应答状态码及含义
本应答报文状态码是老猿结合多方资料收集综合后并加以老猿自己的理解进行说明的应答报文状态码,应该是最新最全解释最详尽的,供大家参考:
- PyQt(Python+Qt)学习随笔:QListView的gridSize属性
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QListView的gridSize属性用于控制视图中数据项排列所在网格的大小,gridSize默认 ...
- 《Eroico》关卡与操作设计
操作设计: 没有给明操作教程,操作全靠蒙,只有改建的位置可以看到. 但游戏的难度并没有给玩家适应操作感,随着难度提升怪物血量增厚,但怪物并没有僵直英雄却有僵直.第一个小猫妖便给了玩家一个痛击. 方向键 ...
- STL——容器(Set & multiset)的概念和特点
1. Set 和 multiset 的概念 set 和 multiset 是一个集合容器,其中 set 所包含的元素是唯一的,集合中的元素按一定的顺序排列.set 采用红黑树变体的数据结构实现,红黑树 ...
- STL——容器(deque)deque 的插入 insert()
deque.insert(pos,elem); //在pos位置插入一个elem元素的拷贝,返回新数据的位置. 1 #include <iostream> 2 #include <d ...
- python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】
python的pip是其包管理工具,相当方便好用.本文只介绍pip 如何通过其freeze命令打离线包,及其离线包的安装脚本.这个知识点,特别适用于不适合连通互联网,设备需要物理隔绝,保密要求严格的客 ...
- elementUI的动态tabs页的使用,vue的动态组件的操作
elementUI的动态tabs页的使用,vue的动态组件的操作 有时候我们需要用到动态的tab页,结合不同的页面内容来显示.这里是使用了elementUI的动态tabs页来实现的 <div c ...
- G1 收集器
基础知识 性能指标 在调优Java应用程序时,重点通常放在两个主要目标上:响应性 或 吞吐量. 响应性Responsiveness 是指应用程序对请求的数据做出响应的速度: 桌面用户界面对事件的响应速 ...
- 06-flask-文件上传案例
前端代码 Demo.html <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- html 06-HTML5详解
06-HTML5详解 #HTML5的介绍 #Web 技术发展时间线 1991 HTML 1994 HTML2 1996 CSS1 + JavaScript 1997 HTML4 1998 CSS2 2 ...