BOM (浏览器对象模型)

简介

作用:提供了独立的内容与浏览器窗口进行交互,因为BOM的核心功能是管理窗口和窗口之间的通讯。所以说BOM当中核心对象window

BOM里面包括了诸多对象,由这些对象共同构成了BOM,这诸多的对象当中提供了很多方法
和属性就是BOM实现功能的依据。 BoM最初是NetScape浏览器标准的一部分。

window对象

window对象是BOM的核心对象,其他对象都是通过BOM延申而来。可以说其他
的对象上的子对象。因为window对象是最顶层的对象,所以window对象的方
法在调用过程中可以不写window

子对象 history

主要处理的是浏览器窗体当中的导航

方法(api)

history.go : 切换访问,参数为正数则模拟的是浏览器当中的前进按钮为负数则模拟的是浏览器当中的后退

//点击前进到下一个网页
btn.onclick = function(){
history.go(1);
}
//点击后退一个网页
btn.onclick = function(){
hostory.go(-1);
}

history.back 后退一次

history.forward 前进一次

子对象 lacation

获取和设置窗口的url,并且可以解析url

url 统一资源定位符

lacation属性

hash : url当中#后面的内容

host : 域名(带有端口号)

hostname : 域名(不带端口号)

herf : 完整的url地址

pathname : 域名后的内容(路径)

port : 端口

protocol : 协议 (http等)

search : 表示请求的参数

toString : 可以将域名变成纯粹的字符串

子对象 navigator

查看浏览器和操作系统的相关信息

navigator的属性

appCodeName 浏览器代码名

appName 官方浏览器的字符串表示

appVersion 浏览器版本信息

cookieEnable 检测浏览器是否开启cookie,true表示开启

userAgent 用户代理头

子对象 screen

屏幕

screen 属性

availHeight 窗口可以使用的屏幕高度,单位像素

availWeight 窗口可以使用的屏幕宽度

colorDepth 浏览器表示的颜色位置

height 屏幕高度

width 屏幕宽度

子对象 frames

浏览器框架集合对象

常用api

moveBy 相对窗口的当前坐标把它移动指定的像素(IE能用)

window.moveBy(x,y);

moveTo 当前窗口移动到指定的坐标位置

window.moveTo(x,y);

resizeBy 调整窗口大小

window.resizeBy(x,y);

resizeTo 动态调整窗口的大小

window.resizeTo(x,y);

scrollTo 可把内容滚动到指定的坐标

scrollTo(xpos,ypos)

scrollBy 可把内容滚动指定的像素数

scrollBy(xnum,ynum)

focus 获取聚焦

documentElement.focus();

blur 失去焦点

documentElement.blur();

open 打开网页

window.open('http://www.baidu.com');

属性

innerWidth 浏览器窗口可视区宽度(不包括浏览器控制台,菜单栏,工具栏) 不兼容IE9以下

innerHeight 浏览器窗口可视区高度(不包括浏览器控制台,菜单栏,工具栏) 不兼容IE9以下

document.documentElement.clientWidth 浏览器窗口可视区宽度(不包括浏览器控制台,菜单栏,工具栏) IE低版本可用

document.documenElement.clientHeight 浏览器窗口可视区高度(不包括浏览器控制台,菜单栏,工具栏) IE低版本可用

outerHeight 浏览器整体高度

outerWidth 浏览器整体宽度

BOM笔记的更多相关文章

  1. DOM&BOM笔记

    day01正课:1. DOM概述2. ***DOM树3. *查找 1. DOM概述: DHTML:动态网页技术的统称 DHTML=HTML+CSS+JS 鄙视题: HTML XHTML DHTML X ...

  2. 第8章BOM笔记

    第八章 BOM 一. Window 在浏览器中window有双重角色,他既是JavaScript访问浏览器窗口的一个借口,又是ECMAscript 规定的Global对象. 1.全局作用域 由于win ...

  3. SAP BOM 笔记(本文仅作笔记使用,非原创)

    SAP各种BOM汇总--含义解释(简洁易懂)-转载(原文连接:http://blog.sina.com.cn/s/blog_b9137f430102xpam.html)感谢作者分享     订单BOM ...

  4. JavaScript BOM学习

    Mirror王宇阳 2019年11月13日 [首发] 数日没有更新博文了,觉得不好意思了!这不是,整理了一下JavaScript的一下BOM笔记资料,今天贡献出来!(HTML DOM也会随后整理发表) ...

  5. 重拾javascript动态客户端网页脚本

    笔记一: 一.DOM 作用: ·              DOM(Doument Object Model) 1.document文档 HTML 文件 (标记语言) <html> < ...

  6. 超详细的DOM操作(增删改查)

    操作DOM的核心就是增删改查 原文地址:https://jianshu.com/p/b0aa846f4dcc 目录 一.节点创建型API 1.1 createElement 1.2 createTex ...

  7. 字符编码笔记:ASCII、Unicode、UTF-8、UTF-16、UCS、BOM、Endian

    转载:http://witmax.cn/character-encoding-notes.html 今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料. 结果,这个问 ...

  8. 字符编码终极笔记:ASCII、Unicode、UTF-8、UTF-16、UCS、BOM、Endian

    1.字符编码.内码,顺带介绍汉字编码 字符必须编码后才能被计算机处理.计算机使用的缺省编码方式就是计算机的内码.早期的计算机使用7位的ASCII编码,为了处理汉字,程序员设计了用于简体中文的GB231 ...

  9. HTML5学习笔记(二十一):BOM

    BOM(Browser Object Model) 是指浏览器对象模型. 由于最初JavaScript就是设计在浏览器中执行的脚本语言,所以BOM是浏览器提供给JavaScript操作自身的接口. w ...

随机推荐

  1. vue-cli中配置vuex流程和注意事项

    本文目录 vue-cli下新建站 配置路由更改HelloWorld.vue组件到新建Home.vue组件 安装vuex 测试是否安装成功vuex一:vue-cli下新建站 a)新建文件夹vuexStu ...

  2. P1197 [JSOI2008]星球大战 [删边求连通块个数]

    展开 题目描述 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治着整个星系. 某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球.这些星球通过特殊的 ...

  3. java设计模式学习笔记--接口隔离原则

    接口隔离原则简述 客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应建立在最小的接口上 应用场景 如下UML图 类A通过接口Interface1依赖类B,类C通过接口Interface1依赖类 ...

  4. sqlserver2014部署安装

    百度云网址链接: https://pan.baidu.com/s/1BwgdnESI8Fqlos9EIOLv1A 提取码: wsy5 1.解压ISO镜像文件,点击setup安装程序 2.进入安装界面 ...

  5. java Spring boot Docker打包

    https://blog.csdn.net/Stephanie_1/article/details/88831993

  6. 剑指offer-面试题15-二进制中1的个数-位运算

    /* 题目: 二进制中1的个数,例如9为1001,有2位1. */ /* 思路: 算法2: 左移unsigned类型flag=1,和n做&运算,当flag移动中1的位置与n对应位置也为1时,则 ...

  7. JAVA方法中参数到底是值传递还是引用传递

    当一个对象被当作参数传递到一个方法后,在此方法内可以改变这个对象的属性,那么这里到底是值传递还是引用传递? 答:是值传递.Java 语言的参数传递只有值传递.当一个实例对象作为参数被传递到方法中时,参 ...

  8. JavaScript实现动态打字效果

    废话不多说,上代码~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  9. gulp常用插件之yargs使用

    更多gulp常用插件使用请访问:gulp常用插件汇总 yargs这是一款通过解析参数并生成优雅的用户界面来帮助您构建交互式命令行工具.处理命令行参数的通用解决方案,只要一句代码 var args = ...

  10. nohup npm start &启动之后关闭终端程序没有后台运行

    感谢:https://blog.csdn.net/nsj820/article/details/5862231 “在当shell中提示了nohup成功后,还需要按终端上键盘任意键退回到shell输入命 ...