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. python依赖包整体迁移方法(pip)

    做个记录 python依赖包整体迁移方法

  2. 使用grunt0.4进行js代码混淆

    1.grunt是基于node,node需要>=0.8.0的稳定版本(奇数是开发版,偶数是稳定版) 2.安装grunt脚手架 (mac电脑需要权限  在前面加上 sudo) npm install ...

  3. MyEclipse创建maven项目时报: org.apache.maven.archiver.MavenArchiver.getManifest 错误

    创建项目报错,如图: 原因就是maven的配置文件不是最新的,MyEclipse2014解决方法: 1.help ->Install New sitie... 2.点击add 3.填写name和 ...

  4. 246-基于TI DSP TMS320C6678、Altera FPGA的CPCI处理卡

    基于TI DSP TMS320C6678.Altera FPGA的CPCI处理卡 1.板卡概述  本板卡由我公司自主研发,基于CPCI架构,符合CPCI2.0标准,采用两片TI DSP TMS320C ...

  5. JVM参数说明

    转载于https://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html文章 JVM参数说明 -Xms:初始堆大小  默认值=物理内存的1 ...

  6. python实战-有道翻译

    #导入urllib包里的request请求模块import urllib.request#导入urllib包里的解析模块 import urllib.parse import json content ...

  7. Hibernate 一对多配置 级联操作(级联失败问题分析解决)

    一方: package com.xdfstar.domain; import java.io.Serializable;import java.util.Date;import java.util.H ...

  8. axios之前端发送get与post请求模板

    import axios from "axios"; 一.get mounted() { axios .get( "/api/queryusertree?domId=&q ...

  9. [BZOJ5407]girls

    也是CF985G... 容斥+三元环计数 CF数据太弱啦 vis没赋初值-1竟然过了QAQ 所以又调了我半个小时才搞掉QAQ 数数真难QAQ 记得要写#include<vector>!!! ...

  10. Autoit 3 常用的语句

    {系统环境变量} EnvUpdate ( ) ;更新环境变量 EnvGet ( "变量名称" ) ;取环境变量 ClipGet ( ) ;取剪辑板文本 EnvSet ( " ...