[关闭]
@15013890200 2018-09-03T15:53:13.000000Z 字数 1520 阅读 503

再读javascript(二)

原生javascript

上接 再读javascript(一)
本章主要介绍BOM(浏览器对象模型)


1、top、parent对象(window对象)

top对象始终指向页面最外层的框架,也就是浏览器窗口。(用于多frame嵌套场景,对于现在当页面场景,相当于window对象)
parent对象指向当前框架的直接上层框架。在没有框架的时候等于top对象

2、和窗口有关的操作(window对象)

1、screenLeft(screenX)、screenTop(screenY),浏览器距屏幕左边和上边的位置。
moveTo、moveBy,均接收两个参数,前者表示移动到某个位置,后者表示偏移量。(一般会被浏览器禁用)

  1. //跨浏览器取窗口左边和上边的位置
  2. var left = (typeof window.screenLeft == 'number') ? window.screenLeft : window.screenX;

2、clientHeight、clientWidth,获取浏览器视口大小
resizeTo、resizeBy,均接收两个参数,前者表示缩放到固定大小,后者表示缩放了指定像素。(一般会被浏览器禁用)

  1. //获取浏览器视口大小(兼容方法)
  2. var clientH = document.documentElement.clientHeight || document.body.clientHeight;

3、windown.open,在指定窗口打开指定URL。参数一:URL,;参数二:指定frame名或者_self、_parent、_top、_blank;参数三:当参数二不时已经存在的窗口或框架,则根据参数三创建一个新窗口或标签页

3、location对象

  • 包含hash、host、hostname、href、pathname、port、protocol、search属性

    hash 返回url中#后面字符串,或者为空
    pathname 返回url中的目录和文件名
    search 返回url中?后面的参数字符串

  • 改变浏览器位置

    location.assign()
    window.location 与 location.href 效果相同,都调用location.assign方法
    通过改变location的属性(hash除外),页面都会刷新并且在浏览器的历史记录生成一条新纪录。
    location.replace() 浏览器不会回退到前一个页面
    location.reload() 不传参数,重新加载(可能从缓存中加载);传true,从服务器重新加载

4、navigator对象

navigator对象包含诸多属性,常用于检测显示网页的浏览器类型。

1、检测插件(navigator.plugins)(非IE浏览器可用)
2、注册处理程序(navigator.registerContentHandler、navigator.registerProtocolHandler)

5、screen对象

实际编程中用到的情况不多
基本上只用来标明客户端的能力,包含浏览器窗口外部的显示器信息,宽度高度等。

6、history对象

history记录用户上网的历史,从窗口被打开的那一刻算起。
出于安全方面的考虑,开发人员无法得知用户浏览过的url
history并不常用,但在创建自定义后退前进按钮,以及检测当前页面是不是用户历史记录中的第一个页面时,必须用它。

history.go() 正数表示前进,负数表示后退。具体数值表示具体前进或者后退几步
history.back() 后退一页
history.forward() 前进一页
history.length 保存着历史记录的数量。为0表示是打开窗口后的第一个页面

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注