当前位置: 首页 > news >正文

WEB前端06-BOM对象

BOM浏览器对象模型

浏览器对象模型:将浏览器的各个组成部分封装成对象。是用于描述浏览器中对象与对象之间层次关系的模型,提供了独立于页面内容、并能够与浏览器窗口进行交互的对象结构。

  • 组成部分
Window:浏览器窗口对象
Navigator:浏览器对象
Screen:屏幕对象
History:历史记录对象
Location:地址栏对象
  • Window窗口对象

window对象是一个全局对象,因此可以直接使用全局对象的属性和方法,而无须写出全局对象的对象名。 window对象在某种意义上代表了浏览器本身,它包含了大量关于浏览器的属性

* Window对象不需要创建可以直接使用 window使用。 window.方法名();
* window引用可以省略。  方法名();

1.常用属性

image-20231230202631998

1. 获取其他BOM对象: history,location,Navigator,Screen
2. 获取DOM对象: document

2.常用方法

image-20231230202645286

3.常用方法详解

对话框方法

对话框是跟用户进行交流的一种形式,对话框有提示、选择 和获取信息的功能。JavaScript提供了三种标准的对话框,分别是弹出对话框、选择对话框和输入对话框。

方法描述
alert()弹出一个只包含确定的对话框
confirm()弹出一个包含【确定】和【取消】按钮的对话框,如果单击 【确定】,则返回true,如果单击【取消】,则返回false
prompt()弹出一个包含【确定】按钮、【取消】按钮和一个文本框的对话框,可以接收用户输入的信息。如果单击【确定】,则 返回文本框已有内容,如果单击【取消】,则返回null

窗口打开与关闭方法

方法描述
open()打开一个新window对象; open(“URL”)表示要指定打开的窗口; open()方法会返回一个表示新窗口的window对象
close()关闭调用close方法的window窗口对象

定时器方法

setInterval-----周期性的执行某一个函数

let id = setInterval(方法对象, 毫秒值)
//会返回定时器的id值

setTimeout-----延迟时间执行一次函数

let id = setTimeout(方法对象, 毫秒值)
//会返回定时器的id值

clearInterval()-----取消由 setInterval() 设置的 timeout

clearInterval(id);

clearTimeout()-----取消由 setTimeout() 方法设置的 timeout。

clearTimeout(id);

案例:轮播图

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>轮播图</title>
</head><body><img src="image/banner_1.jpg" id="banner" width="100%"><script>let num = 1;setInterval(change, 3000);function change() {num++;if (num === 4) {num = 1;}let str = "image/banner_" + num + ".jpg";document.getElementById("banner").src = str;}</script>
</body></html>
  • Location地址栏对象

常用方法

location.reload();//重新加载当前文档,刷新页面

常用属性

获取地址
location.href
//作用:跳转地址
location.href=“www.baidu.com”

案例:自动跳转

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>跳转首页</title><style>p {text-align: center;font-size: 30px;}.time {color: red;}</style>
</head>
<body><p><span class="time" id="time">5</span>秒后自动跳转首页</p><script>let count = 5;let t = document.getElementById("time");setInterval(change, 1000);function change() {count--;t.innerHTML = count;if (count == 1) {location.href = "https://www.baidu.com";}}</script>
</body>
</html>
  • History:历史记录对象

history对象只是表示在当前页面下访问了几个窗体,并不是指浏览器的历史记录

常用方法:

* back()	 加载 history 列表中的前一个 URL* forward()	 加载 history 列表中的下一个 URL* go(参数)    加载 history 列表中的某个具体页面。
正数:前进几个历史记录
负数:后退几个历史记录

常用属性:

length	返回当前窗口历史列表中的 URL 数量。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【博士每天一篇文献-算法】连续学习算法之HNet:Continual learning with hypernetworks
  • 【ensp】防火墙------NET相关配置实验
  • leetcode_189. 轮转数组
  • LLMs之RAG:GraphRAG(本质是名词Knowledge Graph/Microsoft微软发布)的简介、安装和使用方法、案例应用之详细攻略
  • PAT甲级真题1020树的遍历
  • Spring Boot中@Async注解的使用及原理 + 常见问题及解决方案
  • MFC CRectTracker 类用法详解
  • Linux环境下安装Nodejs
  • Flutter热更新技术探索
  • 【ffmpeg命令入门】重新编码媒体流、设置码率、设置帧速率
  • 昇思25天学习打卡营第21天|DCGAN生成漫画头像
  • 算法学习笔记:贪心算法
  • Java集合框架的内部揭秘:List、Set与Map的深潜之旅
  • PHP MySQL 创建数据库
  • 数仓工具—Hive语法之宏(Macro)
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • avalon2.2的VM生成过程
  • Date型的使用
  • Swoft 源码剖析 - 代码自动更新机制
  • vue-loader 源码解析系列之 selector
  • win10下安装mysql5.7
  • 机器学习中为什么要做归一化normalization
  • 算法之不定期更新(一)(2018-04-12)
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • ​香农与信息论三大定律
  • ​学习笔记——动态路由——IS-IS中间系统到中间系统(报文/TLV)​
  • #### go map 底层结构 ####
  • (3)nginx 配置(nginx.conf)
  • (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)...
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (十六)Flask之蓝图
  • (五)Python 垃圾回收机制
  • (五)关系数据库标准语言SQL
  • (一)Neo4j下载安装以及初次使用
  • (一)VirtualBox安装增强功能
  • (一)认识微服务
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • *p++,*(p++),*++p,(*p)++区别?
  • .NET Core 2.1路线图
  • .net core 管理用户机密
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .net 验证控件和javaScript的冲突问题
  • .NET 应用启用与禁用自动生成绑定重定向 (bindingRedirect),解决不同版本 dll 的依赖问题
  • .Net的DataSet直接与SQL2005交互
  • :O)修改linux硬件时间
  • [.NET 即时通信SignalR] 认识SignalR (一)
  • [@Controller]4 详解@ModelAttribute
  • [2019.3.5]BZOJ1934 [Shoi2007]Vote 善意的投票