Javascript高级编程学习笔记(31)—— BOM(5)screen、history对象
screen对象
screen对象应该是BOM对象中最不常用的对象了
其主要用于提供客户端的显示能力信息
包括浏览器外部显示的信息,和像素的宽高等
这个对象的主要用于检测客户端能力,一般不会影响功能
而且由于,该对象的许多属性基本上都是只读的,所以也没有太多可以操作的空间,毕竟这是由客户端硬件所决定的
下面和昨天一样只例举主流浏览器都支持的属性与方法
1、availHeight 屏幕像素总高度减去系统部件高度的值(即屏幕剩余高度)
2、availWidth 屏幕像素宽度减系统部件宽度的值(即剩余屏幕宽度)
3、colorDepth 颜色表示位数(多数系统32位)
4、height 屏幕像素高度
5、width 屏幕像素宽度
PS、1,2两个属性指的系统部件是指任务栏,工具条等,不包括浏览器自身
如下图:


上面两张图是我调节windows任务栏的结果
其他的属性应该从字面意思就能理解这里就不再赘述
关于Screen对象一般的用处也就是采集一下客户端的数据,至于根据这个东西有啥骚操作,楼主还没见过
有见多识广的小伙伴可以留言告诉我
history对象
跟screen对象不一样,history对象是BOM中一个比较重要的对象了
history记录着用户的上网历史记录,该对象从窗口打开的那一刻开始记录
出于安全考虑,我们无法获取用户历史记录的具体URL
但是history提供了一些方法,让我们在不知道URL的情况下也能进行前进和后退
1、history.go() 该方法接收一个整数,负数向后跳转(后退几次),正数向前(前进几次),该方法还可以接收一个字符串作为参数,此时浏览器会跳转向包含该字符串的第一个记录(即距离当前页面最近的记录,不管前进还是后退)
2、history.back() 功能与浏览器的后退按钮一致,不需要参数
3、history.forward() 功能与浏览器的前进按钮一致,不需要参数
4、history.length 浏览器记录的条数,可以通过判断length是否为0来判断这是否是用户打开的第一个页面
PS、每个窗口的history对象是独立的
到这里JS中的BOM对象就介绍完了,明天更客户端检测,也就是前端绕不开的浏览器兼容
(当然这里指的不是样式兼容)
Javascript高级编程学习笔记(31)—— BOM(5)screen、history对象的更多相关文章
- Javascript高级编程学习笔记(27)—— BOM(1)window对象1
ECMAScript是JS的核心 但是对于在浏览器中运行的JS,BOM显然才是真正的核心 我们知道JS是由三个部分组成的 BOM.DOM.ECMAScript 之前的文章我们主要介绍的是ECMAScr ...
- Javascript高级编程学习笔记(30)—— BOM(4)navigator对象
window对象作为浏览器的全局对象.location对象保存了页面的url信息 那么navigator对象又有什么作用呢? navigator对象 该对象最早由 Netspace Navigator ...
- Javascript高级编程学习笔记(29)—— BOM(3)location对象
在JS中location是一个神奇的对象 它既是window对象的属性,也是document对象的属性 它的作用主要在于保存当前文档页面的信息,以及将 url 解析为独立的片段 location对象属 ...
- Javascript高级编程学习笔记(28)—— BOM(2)window对象2
今天讲一下window对象和浏览器导航,弹窗等有关的内容 导航和打开窗口 window.open() 用于导航到某个特定 url 该方法接收四个参数 1.url 2.窗口目标(当页面中有多个框架fra ...
- Javascript高级编程学习笔记(1)—— JS简介
此系列文章,用于记录所学,如有错误欢迎指出. Javascript组成 1.核心(ECMAScript) 2.文档对象模型(DOM) 3.浏览器对象模型(BOM) 1.核心(ECMAScript) E ...
- Javascript高级编程学习笔记(35)—— DOM(1)节点
DOM JS由三部分组成 1.BOM 2.DOM 3.ECMAScript ES和BOM在前面的文章已经介绍过了 今天开始JS组成的最后一部分DOM(文档对象模型) 我们知道,JS中的这三个部分实际上 ...
- Javascript高级编程学习笔记(3)—— JS中的数据类型(1)
前一段时间由于事情比较多,所以笔记耽搁了一段时间,从这一篇开始我会尽快写完这个系列. 文章中有什么不足之处,还望各位大佬指出. JS中的数据类型 上一篇中我写了有关JS引入的Script标签相关的东西 ...
- JavaScript高级编程学习笔记(第三章之一)
继续记笔记,JavaScript越来越有意思了. 继续... 第三章:JavaScript基础 ECMAScript语法在很大程度上借鉴了C和其它类似于C的语言,比如Java和Perl. 大小写敏感: ...
- Javascript高级编程学习笔记(98)—— WebGL(4) WebGL上下文(2)
错误 Javascript与WebGL之间的一个最大区别在于,WebGL的操作一般不会抛出错误 如果希望获取WebGL的错误信息,那么就需要手动调用 gl.getError() 方法 该方法会返回以 ...
随机推荐
- ListView的BeginUpdate()和EndUpdate()作用[z]
[z]https://blog.csdn.net/u011108093/article/details/79448060 许多Windows 窗体控件(例如,ListView 和 TreeView 控 ...
- mac 删除文件不经过废纸篓解决办法
mac 删除文件不经过废纸篓,提示“此项目将被立刻删除,您不能撤销此操作.”,解决办法. 终端机运行两个命令: rm -R ~/.Trash killall Finder 退出终端机. ------- ...
- python基础 (函数名,闭包,和迭代器)
1.函数名作用 函数名本质上就是函数的内存地址或对象. 1.可以被引用 2.可以被当作容器类型的元素 3.可以当作函数的参数和返回值 4.如果记不住的话,那就记住一句话,就当普通变量用 2.闭包 什么 ...
- 20170529计划---统计业务量并生成EXCEL通过邮件发送
每个月都要统计这些业务量的东东,烦死了,赶紧通过python写一个来搞定吧,三天搞定吧,未完待续哈. 2017-5-29 19:50粗略地做了一个思维导图哈 终于第三天完成啦 #encoding=ut ...
- python3 安装 basemap 包(windows10)
下载 pyproj 和 basemap 的安装包 basemap 是具有专业标准的地图绘制工具,可以与 matplotlib 的一般绘图功能结合,在地图上绘制数据. basemap 文档:https: ...
- vs2015 不能启动 iis express
删除以下目录的文件 <<path_to_solution_folder>>\.vs\config\applicationhost.config具体地址http://stacko ...
- Filter笔记
1.Filter [1] Filter简介 > Filter翻译为中文是过滤器的意思. > Filter是JavaWeb的三大web组件之一:Servlet.Filter.Listener ...
- pytest框架之fixture详细使用
本人之前写了一套基于unnitest框架的UI自动化框架,但是发现了pytest框架之后觉得unnitest太low,现在重头开始学pytest框架,一边学习一边记录,和大家分享,话不多说,那就先从p ...
- C++解题报告 : 迭代加深搜索之 ZOJ 1937 Addition Chains
此题不难,主要思路便是IDDFS(迭代加深搜索),关键在于优化. 一个IDDFS的简单介绍,没有了解的同学可以看看: https://www.cnblogs.com/MisakaMKT/article ...
- Code First的实体继承模式
Entity Framework的Code First模式有三种实体继承模式 1.Table per Type (TPT)继承 2.Table per Class Hierarchy(TPH)继承 3 ...