第八章 BOM

一. Window

在浏览器中window有双重角色,他既是JavaScript访问浏览器窗口的一个借口,又是ECMAscript 规定的Global对象。

1.全局作用域

由于window是ECMAscript 规定的Global对象的角色,因此在全局作用域中声明的变量,函数,都会是window对象的属性和方法。

2.窗口位置

a) screenLeft和screenTop

对与ie Safari Opera Chrome都提供了screenLeft,screenTop属性表示窗口相对于屏幕左边和上边的位置。Firefox则在screenX和screenY,属性和上面一样

跨浏览器的窗口位置的代码:

Var leftPos=(typeof window.screenLeft==”number”)?

window.screenLeft:screenX,

Var toppos=(typeof window.screenTop==”number”)?

window.screenTop:screenY,

b) MoveTo()和moveBy()

MoveTo接受的是新位置的x和y的坐标,

moveBy表示的是水平和垂直方向上移动的像素数。

3.窗口的大小

Ie9和其他浏览器中四个属性

OuterWidth和outerHeight表示的浏览器本身的尺寸,

innerWidth和innerHeight表示的是表示页面视图区域的大小(出去边框的宽度),

在ie8 以及更早的版本中,只提供了页面可见区域的相关信息,

document.documenteElement.clientWidth

document.documenteElement.clientHeight保存了页面的视口信息。在ie6中只有在标准模式下才有效,而在混杂模式下使用:

Document.body.clientWidth

Document.body.clientHeight

resizeTo()和resizeBy()方法可以调整浏览器窗口的大小;resizeTo()方法接受两个参数,表示的是新窗口的宽高。resizeBy()也是两个参数表示的是新窗口和原来窗口的高宽度只差。

4.对于移动端

可见视口:window.innerWidth和window.innerHeight保存着可见视口,也就是 屏幕上可见页面区域的大小,IE的移动浏览器不支持这些属性,但 是通过

document.documenteElement.clientWidth

document.documenteElement.clientHeight提供了相同的信息。随着页 面的缩放这些值也会变化。

布局视口:在其他移动浏览器中doxument.documenteElement保存的是布局视 口,即渲染后页面的实际大小,(可见视口是页面中的一部分), ie把布局视口保存在

Document.body.clientWidth

Document.body.clientHeight中

5.window 方法

Window.open()方法:接收四个参数,要加载的URL,窗口目标,一个特性字符串以及一个表示新页面是否取代浏览器历史记录中当前加载页面的布尔值。

第二个参数:该参数是已有的窗口或框架的名称,那么就会在具有该名称的窗口或框架中加载第一个参数指定的URL

如果第二个参数不存在,该方法会更具第三个参数特性打开一个新的窗口或新标签页,

特性有:fullscreen  值yes或no  表示窗口是否最大化 仅限IE

Height:新窗口的高度

Width:宽度

Left:新窗口的左坐标

Right:新窗口的右坐标

。。。。。。。。

Close()方法可以关闭新打开的窗口,这个方法仅限于用window.open()打开的窗口,

6.定时器

setTimeout():两个参数第一个是可以是字符串也可以是函数 第二参数是毫秒数  表示指定时间执行,

Setinterval();每隔多少秒执行

7.系统对话框

Alert(), confirm(),prompt()

confirm()比 alert()多了一个取消按钮

prompt()多了一个文本框共用户输入信息

二 location对象

Location不仅是window的属性还是document得属性

Location的属性:

Hash    #hhhh   返回的是URL中的hash(#号后跟0或多个字符)如果URL中不包含散列 返回空

Host       返回服务器名称和端口号

Hostname    返回不带端口的服务器名称

Href       返回当前页面的完整的URL

Pathname      返回URL中的目录或文件名

Port     返回URL中指定的端口号

Protocol    返回页面使用的协议

Search    “?=javascript”  返回URL的查询字符串,这个字符串以?开头

1.位置操作

1.使用assign()方法并为其传递一个URL,这样就可以立即打开一个新的URL并在浏览器历史记录中生成一个新记录

使用 window.location 和location.href和使用assign()方法一样

一般最常用的是location.href属性

以上的location的属性都可以改变当前浏览的页面,

2.reload()方法 重新加载当前显示页面,当不加任何参数时表示有可能从缓存中加载,当传递ture时表示从服务器加载。

三 navigator对象

Navigator的属性略

  1. 检测插件

Plugins数组:来检测插件(对ie无效)

属性:

Name :插件的名称

Description 插件的描述

Filename 插件的扩展名

Length:插件所处理的mime类型数量

如:

Function hasPlugin(name){

Name=name.toLowerCase();

For(var i=0;i<navigator.plugins.length;i++){

If(navigator.plugins[i].name.toLowerCase().indexOf(name)>-1){

Return ture;

}

}

Return false;

}

Alert(hasPlugons(“flash”))   检查flash

检测ie略

  1. 注册处理程序

registerContentHandler()和registerProtocoHandler()这两个方法可以让一个站点致命他可以处理特定类型的信息。

四 screen 对象

availHeight  屏幕的像素高度减去系统部件的高度之后的值

availWidth   屏幕的像素宽度减去系统部件的宽度之后的值

...........

五  history 对象

go()方法  可以接受一个整数值,正数表示向前跳转  负数表示向后跳转

也可以接受一个字符串,表示跳转历史记录中最近的相同的字符串的那个页面。

Back()

Forward()可以模仿浏览器的后腿和前进按钮

第8章BOM笔记的更多相关文章

  1. 《Linux内核设计与实现》课本第四章自学笔记——20135203齐岳

    <Linux内核设计与实现>课本第四章自学笔记 进程调度 By20135203齐岳 4.1 多任务 多任务操作系统就是能同时并发的交互执行多个进程的操作系统.多任务操作系统使多个进程处于堵 ...

  2. 《Linux内核设计与实现》课本第三章自学笔记——20135203齐岳

    <Linux内核设计与实现>课本第三章自学笔记 进程管理 By20135203齐岳 进程 进程:处于执行期的程序.包括代码段和打开的文件.挂起的信号.内核内部数据.处理器状态一个或多个具有 ...

  3. 《Linux内核设计与实现》课本第五章学习笔记——20135203齐岳

    <Linux内核设计与实现>课本第五章学习笔记 By20135203齐岳 与内核通信 用户空间进程和硬件设备之间通过系统调用来交互,其主要作用有三个. 为用户空间提供了硬件的抽象接口. 保 ...

  4. 《Linux内核设计与实现》 第一二章学习笔记

    <Linux内核设计与实现> 第一二章学习笔记 第一章 Linux内核简介 1.1 Unix的历史 Unix的特点 Unix很简洁,所提供的系统调用都有很明确的设计目的. Unix中一切皆 ...

  5. 《Linux内核设计与实现》第四章学习笔记

    <Linux内核设计与实现>第四章学习笔记           ——进程调度 姓名:王玮怡  学号:20135116 一.多任务 1.多任务操作系统的含义 多任务操作系统就是能同时并发地交 ...

  6. 《Linux内核设计与实现》第五章学习笔记

    <Linux内核设计与实现>第五章学习笔记 姓名:王玮怡  学号:20135116 一.与内核通信     在Linux中,系统调用是用户空间访问内核的唯一手段:除异常和陷入外,它们是内核 ...

  7. Linux内核分析第四章 读书笔记

    Linux内核分析第四章 读书笔记 第一部分--进程调度 进程调度:操作系统规定下的进程选取模式 面临问题:多任务选择问题 多任务操作系统就是能同时并发地交互执行多个进程的操作系统,在单处理器机器上这 ...

  8. 《Linux内核设计与分析》第四章读书笔记

    <内核设计与实现>第四章读书笔记 第四章:进程调度 进程(操作系统)程序的运行态表现形式. 进程调度程序,它是确保进程能有效工作的一个内核子系统. 调度程序负责决定将哪个进程投入运行,何时 ...

  9. 学习笔记(三)--->《Java 8编程官方参考教程(第9版).pdf》:第十章到十二章学习笔记

    回到顶部 注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.若有违本之,则本人不负法律责任.违法 ...

随机推荐

  1. Properties配置文件

    package file; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; ...

  2. Windows下python安装matplotlib

    此文为转载,原文地址为:http://blog.csdn.net/u010585135/article/details/42127273 一.下载matplotlib安装包:网址http://matp ...

  3. NMAP扫描UDP123NTP端口详解

    我用的nmap版本:Zenmap 6.25 例如命令: nmap -sU -pU:123 -Pn -n --script=ntp-monlist IP 如果要批量进行,可以把IP存放在ip.txt可以 ...

  4. Effective Go -> Interface

    1.接口实现及类型转换 type Sequence []int // Methods required by sort.Interface. func (s Sequence) Len() int { ...

  5. Baidu Map Web API 案例

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  6. 在同一上机器上建立两个SVN服务

    最快的三步: 1,SVNADMIN CREATE NAME 2, 改写CONF目录下的相关三个文件. 3,重写一个SVN的启动脚本,指定这个SVN不同的目录及端口号. [general] ### Th ...

  7. AD6反相打印设置

    高级选项-右键选Insert Layer插入要打印的Mechanical 1层 要打印的层全选Full.顶层TOP Layer或底层Bottom Layer.机械层Mechanical 1 分享:  

  8. I2C的读写操作实验

    [实验任务]   利用24C08断电以后存储的数据不消失的特点,可以做一个断电保护装置.首先利用单片机做一个0-99秒的自动计时器.然后随机关断电源,在 通电以后计时器接着断电前的状态继续计时. [实 ...

  9. delphi编写dll心得, 谢谢原作者的分享。转

    delphi编写dll心得 1.每个函数体(包括exports和非exports函数)后面加 'stdcall;', 以编写出通用的dll2.exports函数后面必须加'export;'(放在'st ...

  10. NuGet Package 管理工具

    http://npe.codeplex.com/downloads/get/clickOnce/NuGetPackageExplorer.application