javascript学习13:Window对象使用

1、获取Window对象

可以用两种方式获得window对象。正规的HTML5方式是在Document对象上使用defaultView属性。另一种则是使用所有浏览器都支持的全局变量window 。

2、获取窗口信息

顾名思义,window对象的基本功能涉及当前文档所显示的窗口。

3、与窗口进行交互

window对象提供了一组方法,可以用它们与包含文档的窗口进行交互。

所有这些方法都应该谨慎使用,因为它们会让用户失去对浏览器窗口的控制。用户对应用程序应该具有什么行为有着相当固定的预期,而那些会滚动、打印和关闭自己的窗口一般来说是不受欢迎的。如果你不得不使用这些方法,请把控制权交给用户,并提供非常清晰的视觉线索来告诉他们即将发生什么。

4、对用户进行提示

window对象包含一组方法,能以不同的方式对用户进行提示。

alert,confirm,prompt,showModalDialog

5、获取基本信息

window对象让你能访问某些返回基本信息的对象,这些信息包括当前地址(即文档载入的来源URL)的详情和用户的浏览历史。

document,history,location

6、使用浏览器历史

window.history属性返回一个History对象,你可以用它对浏览器历史进行一些基本的操作。

6.1 在浏览历史中导航

back、forward和go这三个方法告诉浏览器该导航到浏览历史中的哪个URL上。back/forward方法的效果与浏览器的后退/前进按钮是一致的。go方法会导航至相对于当前文档的某个浏览历史位置。正值指示浏览器应该在浏览历史中前进,负值则是后退。值的大小则指定了具体的步数。举个例子,-2这个值告诉浏览器要导航至最近浏览历史之前的那个文档。

6.2 在浏览历史里插入条目

History.pushState方法允许我们给浏览器历史添加一个URL,但带有一些约束条件。URL的服务器名称和端口号必须与当前文档的相同。添加URL的方法之一是只使用附在当前文档后面的查询字符串或锚片段。

6.3 为不同的文档添加条目

当你向浏览器历史添加条目时,不需要局限于将查询字符串或者文档片段作为URL。你可以指定任何URL,只要它的来源和当前文档相同即可。不过,有一个特别之处需要注意。

6.4 在浏览历史中保存复杂状态

请注意当我在之前几个例子里使用pushState方法时,我给头两个参数用的是空字符串("")。中间这个参数会被所有的主流浏览器忽略,在这里不提也罢。但是第一个参数可能会很有用,因为它让你能在浏览器历史里将URL与一个复杂状态对象进行关联。
在之前的例子里,我用查询字符串来代表用户的选择。把它用于这样一段简单的数据是可行的,但如果你要保存更为复杂的数据,它就帮不上忙了。

6.5 替换浏览历史中的条目

之前的那些例子都把焦点放在给当前文档的浏览历史添加条目上,但你还可以用replaceState方法来为当前文档替换条目。

7、使用跨文档消息传递

window对象还为另一种名为“跨文档消息传递”( cross-document messaging)的HTML5新功能提供了人口。通常情况下,不同来源(被称为“origins")的脚本是不允许进行通信的,但是对脚本间通信这一功能的需求是如此强烈,以至于出现了无数的补丁和变通方法来绕过浏览器的安全防护措施。

postMessage(msg,origin) //给另一个文档发指定的消息
8、使用计时器

window对象提供的一个有用功能是可以设置一次性和循环的计时器。这些计时器被用于在预设的时间段后执行某个函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值