javaScript(五):BOM操作

简介: JavaScript 中的 BOM(Browser Object Model)是一组用于操作浏览器窗口的对象和方法集合。BOM 使我们可以通过 JavaScript 访问浏览器窗口的各个组成部分,包括地址栏、菜单栏、历史记录、浏览器的尺寸位置等

1、BOM介绍

什么是BOM

  • BOM(Browser Object Model):流览器对象模型
  • 将浏览器各个组成部分封装成不同的对象,方便我们进行操作

常用的BOM常用对象

BOM常用对象 作用
window 表示浏览器窗口对象
location 表示地址栏对象
history 表示浏览历史记录对象

image-20231210165314871

2、BOM-window对象

2.1、浏览器窗口对象

window:浏览器窗口对象

window中的三个对话框:

window中与对话框有关的方法 作用
alert("提示信息") 弹出一个信息框,只有一个确定按钮
string prompt("提示信息","默认值") 弹出一个输入框,可以输入默认值
boolean confirm("提示信息") 弹出一个确认框,有确定和取消两个按钮,点确定返回true,点取消返回false

获取:直接使用window,其中window可以省略

window.alert("警告框1");
alert("警告框2");

代码演示

<script>
    // alert提示框  (只有确定按钮)
    window.alert("警告框1");
    alert("警告框2");
    // 输入框  (可以输入数据,有确定和取消按钮), 点击确定得到输入的内容, 点击取消得到null
    let name = prompt("请输入名字");
    document.write(name + "<br/>");

    // 确认框  (只有有确定和取消按钮), 点击确定得到true, 点击取消得到false
    let flag = confirm("确定使用嘛");
    document.write(flag + "<br/>");
</script>

2.2、计时器对象

window中计时器有关的方法

window中的方法 作用
setTimeout(函数名, 间隔毫秒数) 过一段时间调用一次指定的函数,只调用一次,方法的返回值就是计时器
setInterval(函数名, 间隔毫秒数) 每隔一段时间调用一次指定的函数,方法的返回值就是计时器

代码演示

function dataFun(){
   
   
    //输出当前时间
    document.write(new Date() + "<br/>");
}


// 定时器
// setTimeout(函数名, 间隔毫秒数) 过指定时间后执行一次函数
setTimeout(dataFun,1000)

// setInterval(函数名, 间隔毫秒数) 每隔指定的时间都会执行前面的函数(反复执行)
setInterval(dataFun,1000)

2.3、案例演示:定时切换图片

需求:每隔一秒,灯泡切换一次状态

image-20231210172058188

<img id="myImage" border="0" src="img/off.gif"/>
<script>
    // 初始图片计数器
let num = 0;

// 定义图片切换函数
function imgChange() {
   
   
  // 判断图片计数器的奇偶性
  if (num % 2 == 0) {
   
   
    // 当计数器为偶数时,切换图片为 on.gif
    document.getElementById("myImage").src = "img/on.gif";
  } else {
   
   
    // 当计数器为奇数时,切换图片为 off.gif
    document.getElementById("myImage").src = "img/off.gif";
  }
  // 每次切换完毕后,计数器加1
  num++;
}

// 定时器,每隔1秒钟调用一次图片切换函数
setInterval("imgChange()", 1000);
</script>

3、BOM-location地址栏对象

location常用属性

属性 功能
href 获取:返回完整的URL
设置:跳转到一个新的页面

获取:使用window.location获取,window可以省略

window.location.方法();
location.方法();

代码演示

<button onclick="hrefFun()">按钮</button>
<script>
    // location的href属性: ?
    document.write(window.location + "<br/>");

    // location的href属性: ?
    function hrefFun(){
   
   
        location.href = "https://www.baidu.com/";
    }
</script>

4、BOM-history历史记录对象

history作用

表示访问过的历史对象,如果没有历史记录,这个对象中的方法不可用

方法 作用
forward() 相当于浏览器上前进按钮,如果浏览器上按钮不可用,这个方法就不起作用
back() 相当于浏览器上后退按钮

获取:使用 window.history获取,其中window. 可以省略

window.history.方法();
history.方法();

注意:

  1. 浏览器上的前进和后退按钮可以点的时候,这个代码才起作用
  2. 读取的是浏览器缓存中数据,如果要访问服务器的数据,需要刷新

代码演示

<a href="01_js_hellowrold.html">跳转</a>
<button onclick="history.forward()">前进</button>
<button onclick="history.back()">后退</button>
相关文章
|
13天前
|
缓存 JavaScript UED
js中BOM中的方法
【10月更文挑战第31天】
|
2月前
|
XML 移动开发 JavaScript
js中BOM和DOM总结(基础篇)
文章总结了JavaScript的BOM和DOM知识点,包括window、screen、location、history、navigator对象,以及消息框、计时器和cookie。同时,介绍了DOM的概念、节点获取和修改方法,以及事件处理。
js中BOM和DOM总结(基础篇)
|
1月前
|
JavaScript 前端开发 Java
【前端基础篇】JavaScript之BOM介绍
【前端基础篇】JavaScript之BOM介绍
37 0
|
2月前
|
JavaScript 前端开发 API
Javaweb之javascript的BOM对象的详细解析
BOM为Web开发提供了强大的API,允许开发者与浏览器进行深入的交互。合理使用BOM中的对象和方法,可以极大地增强Web应用的功能性和用户体验。需要注意的是,BOM的某些特征可能会在不同浏览器中表现不一致,因此在开发过程中需要进行仔细的测试和兼容性处理。通过掌握BOM,开发者能够制作出更丰富、更动态、更交互性的JavaWeb应用。
31 1
|
3月前
|
编解码 JavaScript 前端开发
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
107 1
|
3月前
|
JavaScript 前端开发
js bom的概念
js bom的概念
35 1
|
3月前
|
JavaScript 前端开发
JavaScript BOM 的概念(浏览器对象模型)
JavaScript BOM 的概念(浏览器对象模型)
47 1
|
3月前
|
存储 JavaScript 前端开发
JavaScript中的BOM
JavaScript中的BOM
|
4月前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
42 1
|
4月前
|
存储 JavaScript 前端开发
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
46 1