分享

javascript BOM

 wendy_Jiang 2015-03-09

BOM

BOMbrowser-object-model,汉译为:浏览器对象模型。该模型也是将浏览器应用程序的窗口做为一个对象,提供给javascript访问。

 

 

Javascript BOM

但是浏览器对象模型(Browser Object Model)尚无正式标准。

由于现代浏览器已经(几乎)实现了 JavaScript 交互性方面的相同方法和属性,因此常被认为是 BOM 的方法和属性。下面会说说常用的浏览器对象模型。

 

 

window对象

所有浏览器都支持window对象,它可以由javascript访问,它表示浏览器窗口。

所有的javascript中的全局对象,函数,变量都会自动成为window对象的成员。

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

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

 

除了javascript中定义的全局对象,函数等。在window中自带的经常要用到的一些属性和方法有:(下列演示中window都可以省略不写)

window.document:用于DOM

window.innerWidth:浏览器窗口尺寸宽度

window.innerHeight:浏览器窗口尺寸高度

Ps:对于尺寸,不同的浏览器的获得方法可能不同.

对于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.open():打开新窗口

window.close():关闭窗口

window.moveTo():移动窗口

window.resizeTo():重新定义窗口大小

 

window.screen:用户的屏幕信息

window.screen.availWidth:可用屏幕宽度

window.screen.availHeight:可用屏幕高度

 

 

window.location:用于获得客户机信息

window.location.hostname:返回web主机域名

window.location.pathname: 返回当前页面的路径和文件名

window.location.port:返回主机端口

window.location.protocol:返回主机使用的web协议(http://或者https://

window.location.herf:返回当前整个页面的URL

window.location.assign():加载新文档

 

 

window.history:浏览器的历史信息

window.history.back():后退,与浏览器点击后退相同

window.history.forward():前进,与浏览器前进相同

 

window.navigator:访问者信息,详请参考:

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

 

BOM提供给javascript操作的消息框

警告框:alert(“warnning”);

确认框:confirm(“yesorno”);

提示框:prompt(“input”,”default”);

具体参考:http://www.w3school.com.cn/js/js_popup.asp

 

BOM提供给javascript的时间操作

var s = setTimeout(“textout()”,2000);

clearTimeout(s);

上述语句中第一句javascript通过BOM操作浏览器的时间,在2000ms之后执行textout().

第二秒语句是清楚第一句设定的时间操作。

 

BOM提供给javascript操作的cookie

cookie从物理位置上可以说已经不属于浏览器内部了,cookie是存在于浏览器的缓存文件中。

Javascript通过BOMcookie交流。

具体操作访问对象是:

document.cookie

 

 

 

ajax从结构上来讲,也应该是属于BOM范畴的

ajax是一种同服务器之间交换数据的技术,允许browser在不重载全部页面的情况下,实现对部分网页的更新。且ajax技术在不同的浏览器之上实现方式不一样,所以,如果要使用ajax那么最好是实用jQuery为我们提供的技术吧。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多