BOM

BOM介绍

全称 Browser Object Mode 浏览器对象模式

操作浏览器的API接口。比如浏览器自动滚动

  • Windows对象的顶层部分是BOM的顶层(核心)对象,所有的对象都是通过它延申出来的,也可以称为windowns的子对象。
  • DOM是BOM的一部分

windows对象:

  • windows对象是JavaScript中的顶级对象
  • 全局变量/自定义函数也是windows对象的属性和方法
  • window对象下的属性和方法调用时,可以省略window

BOM的常见内置方法和内置对象

window对象

弹出系统对话框

比如说,alert(1)是window.alert(1)的简写,因为他是window的子方法。系统对话框有下面三种方法:

alert();    //不同浏览器中的外观是不一样的
confirm(); //兼容不好
prompt(); //不推荐使用

打开窗口 关闭窗口

1. 打开窗口
window.open('http://www.baidu.com','_block')

// url: 要打开的地址
// target:新窗口的位置 可以是:_block _self _parent 父框架
2.关闭窗口
window.close(); // 关闭当前打开的页面

获取窗口的宽高

window.innerHeight;   // 获取浏览器的内部高度
388
window.innerWidth; // 获取浏览器的内部宽度
1536
// 提示: 随着窗口的缩小,所以获取到的宽度和高度也会发生变化

Location对象

window.location可以简写为location。location相当于浏览器地址栏,可以将url解析为独立的片段

location对象的属性

  • href:操作地址栏里的url 进行跳转
  • host:主机名,包括端口
  • hash:返回url#号后面的内容 包含#
  • hostname:主机名
  • pathname:url中的路径部分
  • protocol:协议 一般http或者https
  • search:查询字符串

navigator对象

window.navigator 的一些属性可以获取客户端的一些信息。

  • useragent:系统,浏览器
  • platform:浏览器支持的系统 win mac
console.log(navigator.userAgent);
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36 console.log(navigator.platform);
Win32

history对象

返回和前进的操作

// 返回上一次
history.back();
history.go(-1) // 0表示刷新当前页面 // 前进一次
history.forward();
history.go(1)

screen对象(了解即可)

屏幕对象,不常用。

screen.availWidth // 可用的屏幕宽度
screen.availHeight // 可用的屏幕高度

定时器

在js的定时器中分为两种:setTimeout() 和 setInterval()

setTimeout()

只在指定时间后执行一次

// setTimeout(函数,时间)
var t1 = setTimeout(fn,4000);
var t2 = setTimeout(fn,1000);
var t3 = setTimeout(fn,1000);
function fn(){
alert('hello world;')
}
console.log(t1) clearTimeout(t2); // 去除定时器
clearTimeout(t3);

setIntervar()

在指定时间内周期循环执行

var t = setInterval(fn,1000);
function fn(){
console.log('hello')
}
clearTimeout(t)

python-javascript之bom的更多相关文章

  1. 第一百一十一节,JavaScript,BOM浏览器对象模型

    JavaScript,BOM浏览器对象模型 学习要点: 1.window对象 2.location对象 3.history对象 BOM也叫浏览器对象模型,它提供了很多对象,用于访问浏览器的功能.BOM ...

  2. 第三章 JavaScript操作BOM对象

    第三章   JavaScript操作BOM对象 一.window对象 浏览器对象模型(BOM)是javascript的组成之一,它提供了独立与浏览器窗口进行交换的对象,使用浏览器对象模型可以实现与HT ...

  3. JavaScript的BOM和DOM

    JavaScript的BOM和DOM 1,window对象,所有浏览器都支持window对象,它表示浏览器窗口 BOM(browser Object Model)是指浏览器对象模型,它使JavaScr ...

  4. javascript之BOM对象(一window对象)

    javascript包含三个部分,ECMAScript,BOM和DOM.ECMAScript是javascript的核心,包含javascript的基础语法.在Web中使用javascript,BOM ...

  5. 使用jQuery快速高效制作网页交互特效--JavaScript操作BOM对象

    JavaScript操作BOM 一.window对象: 二.window对象的属性和方法 1.windows对象的常用属性: 语法:window.属性名="属性值" 2.windo ...

  6. 8.5 JavaScript的BOM(二)

    8.5 JavaScript的BOM 即 浏览器对象模型(Browser Object Model) 浏览器对象包括 一.Window(窗口) 如果需要打开一个新的网站,应该通过超级链接等方式让用户主 ...

  7. JavaScript(4)---BOM详解

    JavaScript(4)---BOM详解 之前写过一篇有关DOM的博客:JavaScript(2)---DOM详解 DOM有个顶级对象叫:document.同样BOM中也有顶级对象叫 window. ...

  8. JavaScript的BOM对象

    JavaScript的BOM对象 BOM:浏览器对象模型 JavaScript和浏览器的关系:JavaScript的诞生就是为了能够让它再浏览器中运行. 1. 操作BOM对象 1.1 window w ...

  9. [JavaScript之BOM与DOM]

    [JavaScript之BOM与DOM] BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行"对话". DOM ( ...

  10. JavaScript(JS)之Javascript对象BOM,History,Location,Function...(二)

    https://www.cnblogs.com/haiyan123/p/7594046.html 在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创 ...

随机推荐

  1. Using Keyboard Navigation

    http://technet.microsoft.com/en-us/library/cc939835.aspx

  2. NavBarControl控件 2015-07-23 16:56 2人阅读 评论(0) 收藏

    NavBarControl控件 1.      新建一个windows窗体应用程序项目 2.      在工具箱中的Navigation& Layout选项卡下找到NavBarControl, ...

  3. 在pythonanywhere部署你的第一个应用

    pythonanywhere是一个免费的托管python的代码,可以测试你的web应用,用起来还是比较方便的,现在就来介绍如何在pythonanywhere部署你的应用. 下载你的代码 我的代码是托管 ...

  4. MapReduce-WordCountDemo

    /** * @Author: dreamer Q * @Date: 2019/11/4 22:26 * @Version 1.0 * @Discription 使用MapReduce 开发 WordC ...

  5. 理解Thread.sleep()函数

    转载自:http://www.cnblogs.com/ILove/archive/2008/04/07/1140419.html 我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间 ...

  6. Nexus搭建Maven私服中央仓库

    一.概述 1.概要 现在的项目基本都是用Maven来管理工程,这样一来在公司内容搭建一个私服就非常有必要了,这样一来可以管理公司内部用的JAR包,也可以管理第三方的各种JAR来,以免每次都要从外网的仓 ...

  7. TCP协议之三次握手四次挥手

    一.TCP协议简述 TCP协议位于传输层用来建立传输数据的通道以及传输数据,那么在这一层的tcp协议就涉及到客户端与服务端通信的连接,数据的传输.关闭连接. 通信的连接使用的就是客户端与服务端的三次握 ...

  8. Codeforces 963B Destruction of a Tree 思维+dfs

    题目大意: 给出一棵树,每次只能摧毁有偶数个度的节点,摧毁该节点后所有该节点连着的边都摧毁,判断一棵树能否被摧毁,若能,按顺序输出摧毁的点,如果有多种顺序,输出一种即可 基本思路: 1)我一开始自然而 ...

  9. CentOS7 安装KVM

    检测 输入命令如果有输出表示CPU支持虚拟化 grep -E 'svm|vmx' /proc/cpuinfo 检查模块(保证有如下内容) lsmod | grep kvm 结果如下:(kvm_inte ...

  10. mybatis源码分析之02配置文件解析

    该篇正式开始学习mybatis的源码,本篇主要学习mybatis是如何加载配置文件mybatis-config.xml的, 先从测试代码入手. public class V1Test { public ...