js浏览器对象模型-BOM
bom
browse object model
浏览器对象模型。
也就是window对象下面的东西。
location 对象
window.location.href 表示打开窗口的路径。
window.location.reload 刷新当前页面。
navigator 对象
window.navigator.appName 浏览器名称。
window.navigator.userAgent 用户代理信息,通过该属性可以获取浏览器以操作系统信息。
confirm() 方法
confirm("对话框提示文字")
此方法有返回值,点击确定返回 true ,取消返回 false 。
var a=confirm( '你在吗' ) if (a){ console.log( '在' ) } else { console.log( '不在' ) } |
prompt() 方法
prompt('对话框提示文字')
此方法有返回值,点击确定返回对话框字符。取消返回 null 。
var a=window.prompt( '输入姓名' ) if (a!= null && a!= '' ){ console.log( '注册成功' ) } |
onfocus() 使元素获得焦点
onblur() 当元素失去焦点
open() 方法
window.open('url','打开方式','窗口大小')
第三个窗口可以设置窗口大小的前提是窗口在新窗口中打开。
如果打开方式不写,默认是打开新窗口。
< input type = "button" id = "btn" value = "按钮" > < script > //在ie下打开已经设置大小的窗口没有滚动条而且不能调节大小 btn.onclick=function(){ window.open('http://www.baidu.com/','_blank','width=500,height=500') } </ script > |
close() 方法
当直接使用 window.close 时,在谷歌中将关闭自己窗口。
在火狐中没有任何反应。
在ie中询问是否关闭。
< input type = "button" id = "btn" value = "打开新窗口" > < input type = "button" id = "btn1" value = "关闭新窗口" > < script > var opener=null; //在外面定义此变量,以让另一个函数能使用。 btn.onclick=function(){ opener=window.open('http://www.baidu.com') } btn1.onclick=function(){ //每打开一个新窗口,会开启一个新的 window 对象。 opener.close() } </ script > |
clientWidth/Height 不加border的大小
他们获取的大小包括元素自身大小和padding大小。
一般获取整个页面的大小,使用 documentElement ,而不是 body.clientWidth/Height 。
var w=document.documentElement.clientWidth; var h=document.documentElement.clientHeight; console.log(w,h) |
offsetWidth/Height 加border的大小
获取 自身+padding+border 的大小 。
< div id = "div1" style = "width:100px;height:100px;padding:2px;border:5px solid #ccc;margin:10px" ></ div > < script > var div1=document.getElementById('div1'); var w=div1.clientWidth; //104 自身+padding var w1=div1.offsetWidth; //114 自身+padding+border console.log(w,w1) </ script > |
onresize 窗口被改变时
//当窗口大小改变时 window.onresize= function (){ console.log( '窗口被改变' ) } |
scrollTop/Left 滚动距离
document.body.scrollTop||document.documentElement.scrollTop;
获取页面的上下滚动距离。当然没有滚动就没有滚动距离。
document.body.scrollLeft||document.documentElement.scrollLeft;
获取页面的左右滚动距离。
window.onclick= function (){ // body 用来兼容 chrome var st=document.body.scrollTop||document.documentElement.scrollTop; console.log(st) //滚动的距离 } |
js浏览器对象模型-BOM的更多相关文章
- 浏览器对象模型BOM
第二章 浏览器对象模型BOM 1.作用:操作窗口:提供导航对象:提供定位对象:浏览器上方的地址栏:提供跟屏幕相关对象:提供对Cookie的支持 2.根元素:window:代表整个窗口:window,o ...
- JavaScript高级程序设计(第3版)学习笔记·第8章——浏览器对象模型BOM
转自:http://www.shaoqun.com/a/43768.aspx 访问和操作浏览器窗口的模型称为浏览器对象模型BOM(Browser Object Model),但习惯上是把所有针对浏览器 ...
- 浏览器对象模型BOM小结
概念 BOM (Browser Object Model) 浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window B ...
- 浏览器对象模型BOM(Browser Object Model)
1.结构 BOM是Browser Object Model的缩写,简称浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是w ...
- JavaScript编程:浏览器对象模型BOM
4.浏览器对象模型BOM: document.body.offsetwidth可以获取浏览器宽度. Window对象: 窗口操作: 1.moveBy(dx,dy ...
- JavaScript 浏览器对象模型 (BOM)
浏览器对象模型 (BOM) 使 JavaScript 有能力与浏览器“对话”. 浏览器对象模型 (BOM) 浏览器对象模型(Browser Object Model)尚无正式标准. 由于现代浏览器已经 ...
- 浏览器对象模型bom的作用是什么?
浏览器对象模型bom的作用是什么? 零.总结 1.BOM提供了独立于内容而与浏览器窗口进行交互的对象 2.BOM提供了一些访问窗口对象的一些方法,我们可以用它来移动窗口位置,改变窗口大小,打开新窗口和 ...
- 浏览器对象模型(BOM)是什么?(体系结构+知识详解)(图片:结构)
浏览器对象模型(BOM)是什么?(体系结构+知识详解)(图片:结构) 一.总结 1.BOM操作所有和浏览器相关的东西:网页文档dom,历史记录,浏览器屏幕,浏览器信息,文档的地址url,页面的框架集. ...
- js浏览器对象模型(BOM)
浏览器对象模型(Browser Object Model,BOM):浏览器为js提供的对象集合. 1 windows对象 windows对象:表示浏览器的框架以及与其相关的内容,比如滚动条和导航栏图标 ...
随机推荐
- 增删改查--windows下mysql客户端--表的使用
>>>>>>>>>>>>>>>>>>>> selet 5种子句之where常用运 ...
- php与数据库代码开发规范
php与数据库代码开发规范 1/25/2016 6:00:31 PM php对各类变量命名规范 目录名 文件命名 局部变量命名 使用英文动词名词,用下划线作为单词的分割,所有字母均使用小写 目录 up ...
- iis下搭建通过phpstudy集成的环境,phpmyadmin导入数据库无法应解决办法
本人非常喜欢phpstudy的集成php+mysql环境,一键搞定,但是不知道为什么搭建的phpmyadmin的数据库管理器,无法上传,点击无反应 发现上传数据的界面有点不同 正常情况下是这样的: 非 ...
- csv
csv 文件的读写:http://www.cnblogs.com/fiozhao/p/3225112.html 求取一个立方体的对角线穿个的边长为1的正方体的个数:http://www.cnblogs ...
- java.lang.NoSuchMethodError: android.view.View.setBackground
int sdk = android.os.Build.VERSION.SDK_INT; if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) { ...
- POJ 1160 题解
Post Office Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 18835 Accepted: 10158 Des ...
- Linux下uniq命令的详解
-c 在输出行前面加上每行在输入文件中出现的次数. -d 仅显示重复行. -u 仅显示不重复的行. 示例 1.去重,有多行一样的只显示一行cat 4.txt |sort - ...
- 如何让{dede:channel}有子栏目显示子栏目,无子栏目不显示同级栏目
我们在使用织梦系统制作网站时经常会遇到网站栏目较多,显示当前栏目下的二级与三级栏目时,使用栏目嵌套标签,但是当三级栏目为空时,会显示同级栏目.从用户体验角度出发,常理情况下也是需要空白的,即二级栏目下 ...
- iOS 面试总结 一
iOS 开发工程师之面试总结一 好久没有出去面试了,大概一年的时间都很稳定,最近出去面试感觉心里特别慌,没有了当时的勇气了,其实还是感觉自己的准备不是特别的充分,这是主要原因. 这段时间待得太安逸没了 ...
- Grunt 使用记录
想了解Grunt,可以先去官网 看看. 第一次接触Grunt是通过Coding的移动端项目, 刚开始因为环境的问题折腾了一两天,然后就顿悟了. Grunt构建工具对于前端开发而言,简直是神器(ps.虽 ...