您现在的位置是:首页 > 文章详情

JavaScript Window - 浏览器对象模型

日期:2018-07-11点击:328

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

浏览器对象模型 (Browser Object Model)

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

1 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 方案(涵盖所有浏览器):

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() - 调整当前窗口的尺寸 

2 JavaScript Window Location

获得当前页面的地址 (URL),并把浏览器重定向到新的页面

2.1 Window Location

window.location对象在编写时可不使用 window 这个前缀。
一些例子:

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

2.2 Window Location Href

属性返回当前页面的 URL。

实例

返回(当前页面的)整个 URL:

<script> document.write(location.href); </script> 

以上代码输出为:

http://www.w3school.com.cn/js/js_window_location.asp 

2.3 Window Location Pathname

location.pathname 属性返回 URL 的路径名。

实例

返回当前 URL 的路径名:

<script> document.write(location.pathname); </script> 

以上代码输出为:

/js/js_window_location.asp 

2.4 Window Location Assign

location.assign() 方法加载新的文档。

实例

加载一个新的文档:

<html> <head> <script> function newDoc() { window.location.assign("http://www.w3school.com.cn") } </script> </head> <body> <input type="button" value="加载新文档" onclick="newDoc()"> </body> </html> 
原文链接:https://yq.aliyun.com/articles/635919
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章