WEB前端06-BOM对象

BOM浏览器对象模型

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

  • 组成部分

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

  • Window窗口对象

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

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

1.常用属性

js 复制代码
1. 获取其他BOM对象: history,location,Navigator,Screen
2. 获取DOM对象: document

2.常用方法

3.常用方法详解

对话框方法

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

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

窗口打开与关闭方法

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

定时器方法

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

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

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

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

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

js 复制代码
clearInterval(id);

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

js 复制代码
clearTimeout(id);

案例:轮播图

html 复制代码
<!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地址栏对象

常用方法

js 复制代码
location.reload();//重新加载当前文档,刷新页面

常用属性

js 复制代码
获取地址
location.href
//作用:跳转地址
location.href="www.baidu.com"

案例:自动跳转

html 复制代码
<!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对象只是表示在当前页面下访问了几个窗体,并不是指浏览器的历史记录

常用方法:

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

常用属性:

js 复制代码
length	返回当前窗口历史列表中的 URL 数量。
相关推荐
浪浪山小白兔5 分钟前
HTML5 常用事件详解
前端·html·html5
Python大数据分析@22 分钟前
通俗的讲,网络爬虫到底是什么?
前端·爬虫·网络爬虫
Lysun00143 分钟前
vue2的$el.querySelector在vue3中怎么写
前端·javascript·vue.js
jerry-891 小时前
Centos类型服务器等保测评整/etc/pam.d/system-auth
java·前端·github
小爬菜1 小时前
Django学习笔记(启动项目)-03
前端·笔记·python·学习·django
想要打 Acm 的小周同学呀1 小时前
前端Vue2项目使用md编辑器
前端·编辑器·vue2·markdown 语法
计算机-秋大田2 小时前
基于SSM的家庭记账本小程序设计与实现(LW+源码+讲解)
java·前端·后端·微信小程序·小程序·课程设计
海的预约2 小时前
VUE之路由Props、replace、编程式路由导航、重定向
前端·vue.js·智能路由器
西柚与蓝莓3 小时前
报错:{‘csrf_token‘: [‘The CSRF token is missing.‘]}
前端·flask
德迅云安全-小钱4 小时前
跨站脚本攻击(XSS)原理及防护方案
前端·网络·xss