JavaScript Window - 浏览器对象模型

简介: 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 尺寸

有三种方法能够确定浏览器窗口的尺寸。

对于Internet Explorer、Chrome、Firefox、Opera 以及 Safari:

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

对于 Internet Explorer 8、7、6、5:

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

或者

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

实用的 JavaScript 方案(涵盖所有浏览器,包含 IE8 及以下版本的浏览器):

实例

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 RegExp 对象

JavaScript Window Screen

1 篇笔记 写笔记


  1.   prisonerdilemma
     101***1224@qq.com
     参考地址
    456
    定义全局变量与在 window 对象上直接定义属性差别。
    1、全局变量不能通过 delete 操作符删除;而 window 属性上定义的变量可以通过 delete 删除

var num=123;

window.str="string";

delete num;

delete str;

console.log(num); //123


console.log(str); //str is not defined

//全局变量不能通过 delete 删除,因为通过 var 定义全局变量会有一个名为 [Configurable] 的属性,默认值为 false,所以这样定义的属性不可以通过 delete 操作符删除

  1. 2、访问未声明的变量会抛出错误,但是通过查询 window 对象,可以知道某个可能未声明的变量是否存在。

var newValue=oldValue; // 报错:oldValue is not defined

var newValue=window.oldValue; // 不会报错

console.log(newValue); // undefined

  1. 3、有些自执行函数里面的变量,想要外部也访问到的话,在 window 对象上直接定义属性。
目录
相关文章
|
6天前
|
JavaScript 前端开发
JavaScript Date(日期) 对象
JavaScript Date(日期) 对象
17 2
|
2天前
|
JavaScript 前端开发
JavaScript Window Navigator
JavaScript Window Navigator
6 2
|
4天前
|
JavaScript 前端开发
JavaScript Window Screen
JavaScript Window Screen
15 3
|
5天前
|
JavaScript 前端开发
JavaScript Math(算数) 对象
JavaScript Math(算数) 对象
13 4
|
2天前
|
JavaScript 前端开发
JavaScript Window History
JavaScript Window History
5 1
|
4天前
|
JavaScript 前端开发
JavaScript Window Location
JavaScript Window Location
10 2
|
5天前
|
JavaScript 前端开发
JavaScript RegExp 对象
JavaScript RegExp 对象
15 3
|
5天前
|
JavaScript 前端开发
JavaScript Boolean(布尔) 对象
JavaScript Boolean(布尔) 对象
10 3
|
6天前
|
存储 JavaScript 前端开发
JavaScript Array(数组) 对象
JavaScript Array(数组) 对象
14 3
|
6天前
|
存储 JavaScript 前端开发
JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象
13 3