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,执行事件的代码

  注册监听:将事件、事件源、监听器三者绑定到一起。当事件源上发生了某个事件,则会触发执行某个监听器代码。

常见的事件:

  1. 点击事件

 点击事件: onclick

 双击事件: ondblclick

  1. 焦点事件

 获取焦点: onfocus

 失去焦点 onblur

  1. 加载事件

    ​ onload 一个页面或者一张图像完成加载

  2. 鼠标事件

 鼠标按键按下: onmousedown

 鼠标按键松开: onmouseup

 鼠标离开: onmouseout

 鼠标移动: onmousemove

 鼠标悬浮到某元素上:onmouseover

  1. 键盘事件

 键盘按下: onkeydown

  键盘松开: onkeyup

  键盘按下并松开: onkeypress

  1. 表单事件

 表单提交:onsubmit

 表单重置:onreset

  1. 选择和改变事件

  onchange 文本内容发生改变触发

  onselect 文本被选中触发

HTML DOM 标签对象

  1. 标签体内容获取和设置 属性: innerHTML(可以插入文本内容和标签以及组合标签) innerText(插入文本内容)

  2. 使用html标签对象拥有的属性

  3. 通过标签对象更改标签的样式: style 通过style属性设置css样式

    div.style.border = "1px solid black";

    div.style.background = "red";

    div.style.backgroundImage = "url(图像路径)"

    一般不推荐 使用css代码提前设置

    通过className属性给该标签设置对应的class值

js 中的 DOM 和 BOM的更多相关文章

  1. JS中的DOM与BOM

    javascript组成: 1. ECMAScript 基本语法. 2. BOM (浏览器对象模型) 3. DOM (文档对象模型) 一)BOM(borwser Object  Model) 浏览器对 ...

  2. JS中的函数、Bom、DOM及JS事件

    本期博主给大家带来JS的函数.Bom.DOM操作,以及JS各种常用的数据类型的相关知识,同时,这也是JavaScript极其重要的部分,博主将详细介绍各种属性的用法和方法. 一.JS中的函数 [函数的 ...

  3. JS中的函数、BOM和DOM操作

     一.JS中的函数 [关于注释] /** [文档注释]:开头两个*.写在函数上方,在调用函数时可以看到文档上方的描述信息. */   // 单行注释 /* 多行注释 */ 1.函数的声明及调用 (1) ...

  4. 前端(十六)—— JavaScript盒子模型、JS动画、DOM、BOM

    JS盒子模型.JS动画.DOM.BOM 一.JS盒模型 1.width | height parseInt(getComputedStyle(ele, null).getPropertyValue(' ...

  5. js中的DOM操作汇总

    一.DOM创建 DOM节点(Node)通常对应于一个标签,一个文本,或者一个HTML属性.DOM节点有一个nodeType属性用来表示当前元素的类型,它是一个整数: Element,元素 Attrib ...

  6. js中的DOM对象 和 jQuery对象 比较

    一,二者的区别 通过 jQuery 获取的元素是一个数组,数组中包含着原生JS中的DOM对象. 总结:jQuery 就是把 DOM 对象重新包装了一下,让其具有了 jQuery 方法. 二,二者的相互 ...

  7. js中的DOM对象和jQuery对象的比较

    1. 二者的不同之处: 通过jQuery获取的元素是一个数组, 数组中包含着原生JS中的DOM对象. 例如, 针对下面的一个div结构: <div id="Box">& ...

  8. python 全栈开发,Day52(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)

    昨日作业讲解: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉, ...

  9. JS中的循环嵌套 BOM函数

    [嵌套循环特点]                           外层循环转一次,内层循环转一圈              外层循环控制行数,内层循环控制每行元素个数             [做 ...

随机推荐

  1. java并发编程实战《四》互斥锁(下)

    互斥锁(下):如何用一把锁保护多个资源?    一把锁可以保护多个资源,但是不能用多把锁来保护一个资源. 那如何保护多个资源? 当我们要保护多个资源时,首先要区分这些资源是否存在关联关系. 如下代码 ...

  2. 推荐4个Flutter重磅开源项目

    早上好,骚年,我是小 G,我的公众号「菜鸟翻身」会推荐 GitHub 上有用的项目,一分钟 get 一个优秀的开源项目,挖掘开源的价值,欢迎关注我. 近年来,随着移动智能设备的快速普及,移动多端统一开 ...

  3. 老猿学5G专栏文章目录

    ☞ ░ 前往老猿Python博文目录 ░ 一.3GPP规范文档及其他推荐阅读博文 老猿学5G扫盲贴:3GPP规范文档命名规则及同系列文档阅读指南 老猿学5G扫盲贴:3GPP规范中部分与计费相关的规范序 ...

  4. 第11.23节 Python 中re模块的搜索替换功能:sub及subn函数

    一. 引言 在<第11.3节 Python正则表达式搜索支持函数search.match.fullmatch.findall.finditer>重点介绍了几个搜索函数,除了搜索,re模块也 ...

  5. PyQt(Python+Qt)学习随笔:Designer中的QDialogButtonBox的clicked信号参数QAbstractButton *解决办法

    一.引言 QDialogButtonBox本身只提供4种信号,分别是accepted.rejected.clicked和helpRequested,在<PyQt(Python+Qt)学习随笔:D ...

  6. AcWing 345. 牛站 Cow Relays

    由于我太菜了,不会矩阵乘法,所以给同样不会矩阵乘法同学的福利 首先发现这题点很多边很少,实际上有用的点 \(<= 2 * T\)(因为每条边会触及两个点嘛) 所以我们可以把点的范围缩到 \(2 ...

  7. 新挖个坑,准备学习一下databricks的spark博客

    挖坑 https://databricks.com/blog 一.spark3.0特性(Introducing Apache Spark 3.0) 1.通过通过自适应查询执行,动态分区修剪和其他优化使 ...

  8. Fabric v2.0中的隐私数据

    文章来源于https://hyperledger-fabric.readthedocs.io/en/release-2.0/ 私有数据集在v1.4中提出,一直使用的是隐私数据集方式,即建立一个隐私数据 ...

  9. 5.深入Istio源码:Pilot-agent作用及其源码分析

    转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 本文使用的Istio源码是 release 1.5. 介绍 Sidecar在注入的时候会 ...

  10. 【网盘下载加速器】可爆破提取码 加速高达20M以上

    [软件名称]:网盘下载加速   [软件版本]:1.0.0   [软件大小]:3.95MB   [支持系统]:Android,4.4+及更高版本   [测试系统]:小米   [使用说明]:一款小巧的网盘 ...