JavaScript学习笔记(13)——BOM

时间:2023-03-08 17:27:22
JavaScript学习笔记(13)——BOM

1.window

所有浏览器都支持window对象,它表示浏览器窗口本身。

所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。

全局变量是 window 对象的属性。

全局函数是 window 对象的方法。

甚至 HTML DOM 的 document 也是 window 对象的属性之一。

/*
* 对于Internet Explorer、Chrome、Firefox、Opera 以及 Safari:window.innerWidth
* 对于 Internet Explorer 8、7、6、5:document.documentElement.clientWidth
* 或者:document.body.clientWidth
*
*/
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.screen

屏幕

3.location

用于获取当前页面的地址,主机域名,端口,页面文件路径,协议等相关信息,并可以将浏览器重定向到新的页面。

其属性不仅限于以下属性:

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

4.history

用于记录浏览器访问历史记录。有两个重要方法,类似于浏览器前进和回退按钮。

  • history.back() - 与在浏览器点击后退按钮相同
  • history.forward() - 与在浏览器中点击按钮向前相同

5.navigator

用于检测浏览器信息,但是返回的信息具有误导性。

由于 navigator 可误导浏览器检测,使用对象检测可用来嗅探不同的浏览器。

由于不同的浏览器支持不同的对象,您可以使用对象来检测浏览器。例如,由于只有 Opera 支持属性 "window.opera",您可以据此识别出 Opera。

例子:if (window.opera) {...some action...}

6.popupalert

  • alert("警示框")
  • confirm("确认框") 返回bool值,用户点击确认或取消
  • prompt("提示框","输入框默认文本") 返回用户在输入框输入的内容

7.timing

通过setTimeout方法设置定时器,代码如下:

window.setTimeout("timeout1()", 3000);

其中timeout1是javascript函数,此处也可以直接编写javascript代码,3000指定时器启动后多久触发前面的方法,单位为毫秒。该方法返回值类型为Number的timeoutId,该Id可以做为window.clearTimeout()方法的参数,此方法可以清楚定时器。

另外还有如下定时器设置,代码如下:

var i=window.setInterval("Interval1()",3000);

类似于setTimeout方法,区别在于,setTimeout方法设置的定时器在指定时间后执行一次,而setInterval()方法是每隔一定时间执行一次.

8.cookies

通过document.cookies=""设置cookies字符串,通过document.cookies可以读取到已经存储的cookies值,通过解析该字符串来使用cookies。