JavaScript BOM对象

JavaScript Window - 浏览器对象模型

浏览器对象模型(BOM)使JavaScript有能力与浏览器"对话"。

浏览器对象模型(BOM)

浏览器对象模型(Browser Object Model:BOM)尚无正式标准,由于现代浏览器已经几乎实现了JavaScript交互性方面的相同方法和属性,因此常被认为是BOM的方法和属性。

Window对象

所有浏览器都支持window对象,它表示浏览器窗口。所有JavaScript全局对象、函数以及变量均自动称为window对象的成员。全局变量是window对象的属性,全局函数是window对象的方法,甚至HTML DOM的document也是window对象的属性之一:

window.document.getElementById("header");

与此相同:

document.getElementById("header");

Window尺寸

有三种方法能够确定浏览器窗口的尺寸,对于IE、Chrome、FireFox、Opera语句Safari:

  • window.innerHeight:浏览器窗口的内部高度(包括滚动条)
  • window.innerWidth:浏览器窗口的内部宽度(包括滚动条)

对于IE8、7、6、5:

  • document.documentElement.clientHeight
  • document.documentElemetn.clientWidth

或者

  • document.body.clientHeight
  • document.body.clientWidth

实用的JavaScript方案(涵盖所有浏览器):

var w=window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;

var h=window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;

其他Window方法

window.open() - 打开新窗口
window.close() - 关闭当前窗口
window.moveTo() - 移动当前窗口
window.resizeTo() - 调整当前窗口的尺寸

JavaScript Window Screen

widow.screen对象包含有关用户屏幕的信息。

Window Screen

window.screen对象在编写时可以不使用window这个前缀,其属性有:

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

Window Screen 可用宽度

screen.availWidth属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如窗口任务栏:

<script>
document.write("可用宽度: " + screen.availWidth); // 返回屏幕可用宽度:1920
</script>

Window Screen 可用高度

scree.availHeight属性返回访问者屏幕的高度,以像素计,减去界面特性,比如窗口任务栏:

<script>
document.write("可用高度: " + screen.availHeight); // 返回屏幕可用高度:1040
</script>

JavaScript Window Location

window.location对象用于获取当前页面的地址(URL),并把浏览器重定向到新的页面。

Window Location

window.location对象在编写时可不使用window这个前缀,如下例子:

  • location.hostname:返回web主机的域名;
  • location.pathname:返回当前页面的路径和文件名;
  • location.port:返回web主机的端口(80或443);
  • location.protocol:返回所使用web协议(http://或https

    前端基础:JavaScript BOM对象的更多相关文章

    1. JS BOM DOM对象 select联动 计时器 时间 css操作 节点(标签 ) 查找标签 {前端基础之BOM和DOM}

      前端基础之BOM和DOM 前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我 ...

    2. 前端基础之BOM和DOM day52

      前端基础之BOM和DOM   前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互 ...

    3. day 47 前端基础之BOM和DOM

        前端基础之BOM和DOM   前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些 ...

    4. day35前端基础之BOM和DOM

      day35前端基础之BOM和DOM BOM操作 简介 BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行"对话". ...

    5. JavaScript BOM对象介绍

      bom:即broswer object model(浏览器对象模型),由五个对象组成:        Window:对象表示浏览器中打开的窗口 最顶层对象.       Navigator :浏览器对 ...

    6. 前端基础-JavaScript

      转载地址:http://www.cnblogs.com/yuanchenqi/articles/6893904.html 一.Javascript结构   ECMAScript  ECMAScript ...

    7. 前端基础----JavaScript基础

      一.JavaScript概述 1,JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEa ...

    8. 前端基础-JavaScript的基本概述和语法

      1.JavaScript概述 2.JavaScript引入方式 3.JavaScript语言规范 4.JavaScript语言基础 5.JavaScript数据类型 6.JavaScript运算符 7 ...

    9. 前端基础 DOM & BOM

      推荐阅读:http://www.cnblogs.com/yuanchenqi/articles/6893904.html#_label3 BOM对象 window 对象 所有浏览器都支持 window ...

    随机推荐

    1. 【转】Odoo装饰器: one装饰

      one装饰器的作用是对每一条记录都执行对应的方法,相当于traditional-style中的function,无返回值! 应用举例: 定义的columns now = fields.Datetime ...

    2. day 1 安装pygame

      1.稀里糊涂装上了 参考博客:http://blog.csdn.net/sinat_40043477/article/details/78276460

    3. atomic是绝对的线程安全么?为什么?如果不是,那应该如何实现?

      atomic不是绝对的线程安全.atomic的本意是指属性的存取方法是线程安全的,并不保证整个对象是线程安全的 @property (atomic, assign) int intA; //线程A f ...

    4. 你的APK安全吗?来WeTest免费测!

      腾讯安全联合实验室就曾在<2018上半年互联网黑产研究报告>指出,移动端黑产规模宏大,恶意推广日均影响用户超过千万. 尤其在网络强相关的APP流行年代,当APP应用客户端上传与获取信息,大 ...

    5. Pycharm中查看方法的源码

      方法1.鼠标放在函数上,Ctrl+B,看源码 方法2.将光标移动至要查看的方法处,按住ctrl 键,点击鼠标左键,即可查看该方法的源码.

    6. TPO-13 C1 Understand the assignment in psychology course

      TPO-13 C1 Understand the assignment in psychology course 第 1 段 1.listen to a conversation between a ...

    7. hello word!------为什么开通博客以及自我介绍

      来北京已经一年半的日子了,已经完全成功熟练的成为了另一个我,没有了半年前刚来时的那种焦虑.急躁和格格不入. 回想起来那段时间,大概是我人生中非常重要的时期了,去年那个夏天,只身一人背上行囊踏上了北上的 ...

    8. 关于Python3中函数:

      # 关于Python3中函数: - 定义 定义函数使用关键字def,后接函数名和放在圆括号()中的可选参数列表,函数内容以冒号起始并且缩进.一般格式如下:``` def 函数名(参数列表): &quo ...

    9. 1208: [HNOI2004]宠物收养所

      1208: [HNOI2004]宠物收养所 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 12030 Solved: 4916 Description ...

    10. 《Linux/UNIX系统编程手册》读书笔记

      2018-1-30 一.UNIX.C语言以及Linux的历史回顾 1. UNIX简史.C语言的诞生 1969年,贝尔实验室的Ken Thompson首次实现了UNIX系统. 1973年,C语言步入成熟 ...