BOM,文档宽高及窗口事件小析
(一)BOM:Browser Object Model(浏览器对象模型)
页面上所有的变量都是window的属性
一、方法:
1. open(,)
打开一个新窗口(页面)
一参为页面地址url,二参为打开方式
如果url为空,默认打开一个空白页面
如果打开方式为空,默认打开新窗口方式打开
返回值:发挥新打开的窗口的window对象
2. close(,)
关闭窗口,前边对象是谁关闭谁
兼容:(1)火狐ff:默认无法关闭
(2)Chorme:默认直接关闭
(3)ie:询问用户
可以关闭在本窗口中通过js方法打开的新窗口
二、属性:
1. window.navigator.userAgent ==>浏览器信息(可用于不同浏览器采取不同的措施)
2. window.location ==>浏览器地址信息,返回object对象
因此其下还有属性:
window.location.href ==>地址栏的地址
window.location.search ==>url中?之后的内容(包括?)
window.location.hash ==>url中#之后的内容(包括#)
(二)文档的宽高
1. document.documentElement.clientWidth[Height] ==>可视区宽高(因为document无宽高,所以加上documentElement
,其中document.documentElement可换成任何有宽高属性的元素,下同)
document.documentElement.scrollTop[Left] ==>滚动条滚动距离(有兼容chrome认为滚动按钮算作在body里)
兼容处理:
var ScrollTop=document.documentElement.scrollTop||document.body.scrollTop;
2. 盒子元素.scrollHeight[Width] ==>盒子内容宽高
3. document.documentElement.offsetWidth[Height] ==>文档可视宽高
(三)窗口事件
onscroll ==>当滚动条滚动时触发
onreset ==>当窗口大小发生改变时触发
注:这两个事件的触发是按时间间隔计算,改变速度快,触发次数少,改变速度慢,触发事件的次数多
eg:var i=0;
window.onscroll=function(){
document.title=i++;
}
BOM,文档宽高及窗口事件小析的更多相关文章
- JS中级 - 03:文档宽高及窗口事件(选)
可视区尺寸 document.documentElement.clientWidth document.documentElement.clientHeight 滚动距离 document.body. ...
- JavaScript -获取屏窗与视窗、文档宽高
实例:1920*1080的电脑屏幕 1.获取窗口中的文档显示区域宽高 clientw = window.innerWidth; //1920(包含滚动条) clienth = window.inner ...
- js实现字体和容器宽高随窗口改变
用于字体大小和容器的宽高字体和宽高设为rem就可以了 var html = document.documentElement; function fonts(){ var hW = html.offs ...
- js学习笔记23----窗口尺寸及窗口事件
窗口尺寸: 可视区的尺寸 document.documentElement.clientWidth document.documentElement.clientHeight 滚动距离 documen ...
- js、jQuery 获取文档、窗口、元素的各种值
基于两年开发经验,总结了 javascript.jQuery 获取窗口.文档.元素的各种值 javascript: 文档:是整个document所有的内容 浏览器当前窗口文档body的宽度: docu ...
- jQuery 选择器 筛选器 样式操作 文本操作 属性操作 文档处理 事件 动画效果 插件 each、data、Ajax
jQuery jQuery介绍 1.jQuery是一个轻量级的.兼容多浏览器的JavaScript库. 2.jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方 ...
- ABP文档笔记 - 事件BUS
文档: ABP框架 - 领域事件(EventBus) EventBus & Domain Events ABP源码分析二十五:EventBus EventBus(事件总线) EventBus是 ...
- ie低版本内核事件兼容问题(事件绑定,绑定事件自动执行,文档模式问题)
问题情况 搜狗等,兼容模式下,以前前端写的点击事件的代码没有, 后来一看是因为兼容模式为9,导致点击事件失效 解决办法,步骤 1,处理绑定事件兼容问题 ie低版本绑定事件只支持attactevent, ...
- angularjs 监听 文档click 事件
项目 上遇到 innHTML 放入 一大段的html 内容 中带有 click 事件 如onclick="callInMethod("http://www.crm.bmcc.c ...
随机推荐
- APP常用字体
font-family:Microsoft YaHei,Helvitica,Verdana,Tohoma,Arial,san-serif;
- C和指针 第十四章 预处理器 头文件
编写一个C程序,第一个步骤称为预处理,预处理在代码编译之前,进行一些文本性质的操作,删除注释.插入被include的文件.定义替换由#define定义的符号,以及确定代码的部分内容是否应该按照条件编译 ...
- javascript数据结构-数组
github博客地址 简介 数组是最简单的数据结构,javascript语言也很早就原声支持了数组Array数据类型,和其他语言略微不同的是:js中的数组可以存储不同类型的值,看起来很厉害的样子,但是 ...
- ngCloak 实现 Angular 初始化闪烁最佳实践
在做angular的SPA开发时,我们经常会遇见在如Chrome这类能够快速解析的浏览器上出现表达式({{ express }} ),或者是模块(div)的闪烁.对于这个问题由于JavaScript去 ...
- python Function
Python 2.7.10 (default, Oct 14 2015, 16:09:02) [GCC 5.2.1 20151010] on linux2 Type "copyright&q ...
- Qt: 时钟Demo
其实是一个很简单的Demo,可以编译了拿NSIS打包.最近在做富文本编辑器和补C++不记得的东西吧,项目遥遥无期. //clock.pro #----------------------------- ...
- resin 安装配置
resin (下载免费版 4) 前提:已经安装了Java运行环境,resin的安装需要jdk的支持 一.安装 1.cd /usr/local/src wget http://www.caucho. ...
- myeclipse(2015)中创建简单的Maven项目的步骤(用于生成可执行jar文件)------》myeclipse2015
利用MyEclipse的引导,可以很方便的创建简单的.用于生成可执行jar文件的Maven项目: 1.New -> Project... 选择 Maven Project, 点击Next > ...
- Spring+SpringMvc+Mybatis框架集成搭建教程四(项目部署及测试)
在IDEA中将项目部署到本地Tomcat下进行运行并验证整合结果 (1).点击如下图所示的下拉按钮,弹出Edit Configurations...后点击该项. (2).跳出如下界面后,点击红框内的& ...
- 设置app的启动图
Step1 1.点击Image.xcassets 进入图片管理,然后右击,弹出"New Launch Image" 2.如图,右侧的勾选可以让你选择是否要对ipad,横屏,竖屏,以 ...