第3课_BOM浏览器对象模型
热度🔥:61 免费课程
授课语音
掌握BOM浏览器对象模型,与浏览器“对话”
浏览器对象模型(BOM,Browser Object Model)是一个非常重要的概念,它使得我们能够通过 JavaScript 操作浏览器窗口、浏览器历史记录、屏幕信息等内容。BOM 提供了与浏览器“对话”的能力,使我们能够实现动态网页的交互效果。
1. BOM 概述
BOM 是浏览器中提供的一组对象,用来与浏览器本身进行交互。通过 BOM,我们可以控制浏览器窗口、历史记录、屏幕、网络等。与 DOM(文档对象模型)不同,DOM 主要用于操作网页内容,而 BOM 主要用于与浏览器的交互。
1.1 BOM 主要对象
window
:表示浏览器窗口,几乎所有与浏览器的交互都通过window
对象进行。navigator
:提供浏览器信息,如浏览器名称、版本、操作系统等。screen
:提供屏幕的相关信息,如分辨率、可用区域等。location
:表示浏览器的当前 URL,可以获取和修改地址栏中的 URL。history
:浏览器的历史记录,用于浏览器的前进、后退功能。alert
、confirm
、prompt
:用于与用户交互的弹出框。
2. window
对象
window
是 BOM 的核心对象,几乎所有的 BOM 操作都通过 window
对象来进行。它代表着浏览器的窗口,包含了浏览器的所有属性和方法。
2.1 访问和操作 window
对象
2.1.1 获取浏览器窗口的宽度和高度
let width = window.innerWidth; // 获取浏览器窗口的宽度
let height = window.innerHeight; // 获取浏览器窗口的高度
console.log(`浏览器窗口的宽度为: ${width}`);
console.log(`浏览器窗口的高度为: ${height}`);
中文注释:
- 使用
window.innerWidth
和window.innerHeight
获取浏览器窗口的宽度和高度。
2.1.2 弹出一个简单的警告框
window.alert("欢迎来到BOM教程!"); // 弹出警告框
中文注释:
- 使用
window.alert()
方法弹出一个简单的警告框,显示提示信息。
3. navigator
对象
navigator
对象包含有关浏览器的信息,如浏览器名称、版本、平台等。
3.1 获取浏览器信息
let browserName = navigator.appName; // 获取浏览器的名称
let browserVersion = navigator.appVersion; // 获取浏览器的版本
console.log(`浏览器名称:${browserName}`);
console.log(`浏览器版本:${browserVersion}`);
中文注释:
navigator.appName
获取浏览器的名称,navigator.appVersion
获取浏览器的版本信息。
4. screen
对象
screen
对象提供了关于用户显示屏幕的相关信息,主要包括屏幕的分辨率、可用区域等。
4.1 获取屏幕信息
let screenWidth = screen.width; // 获取屏幕的宽度
let screenHeight = screen.height; // 获取屏幕的高度
console.log(`屏幕的宽度:${screenWidth}`);
console.log(`屏幕的高度:${screenHeight}`);
中文注释:
screen.width
和screen.height
获取用户屏幕的宽度和高度。
5. location
对象
location
对象代表当前文档的 URL,并允许通过 JavaScript 获取和修改浏览器的地址栏。
5.1 获取当前的 URL
let currentURL = location.href; // 获取当前页面的完整 URL
console.log(`当前页面的 URL 是: ${currentURL}`);
中文注释:
location.href
获取当前页面的 URL。
5.2 修改浏览器的 URL
location.href = "https://www.example.com"; // 将浏览器跳转到新 URL
中文注释:
- 修改
location.href
属性可以将浏览器跳转到新的 URL。
6. history
对象
history
对象用于操作浏览器的历史记录,可以实现前进、后退等功能。
6.1 访问历史记录
history.back(); // 返回到上一个页面
history.forward(); // 前进到下一个页面
history.go(-2); // 返回到历史记录中的第2个页面
中文注释:
history.back()
返回到历史记录中的上一页,history.forward()
前进到下一页,history.go()
允许根据参数控制浏览器的历史记录。
7. alert
、confirm
和 prompt
方法
这三个方法允许我们与用户进行交互,获取用户输入或显示信息。
7.1 alert
方法
alert("这是一个警告框!"); // 弹出警告框
中文注释:
alert()
方法用于显示一个简单的提示框。
7.2 confirm
方法
let result = confirm("你确定要继续吗?");
console.log(result); // 如果点击“确定”返回 true,如果点击“取消”返回 false
中文注释:
confirm()
方法弹出一个确认框,用户点击“确定”返回true
,点击“取消”返回false
。
7.3 prompt
方法
let name = prompt("请输入你的名字:");
console.log(`你的名字是: ${name}`);
中文注释:
prompt()
方法弹出一个输入框,允许用户输入数据。
8. 总结
BOM 提供了与浏览器进行交互的能力,通过 window
、navigator
、screen
、location
和 history
等对象,我们可以控制浏览器窗口、获取浏览器和屏幕信息、管理浏览器历史记录等。掌握 BOM 的使用,将帮助我们更加高效地与浏览器进行交互,实现更加丰富和动态的网页效果。