Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8139255
  • 博文数量: 594
  • 博客积分: 13065
  • 博客等级: 上将
  • 技术积分: 10324
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-26 16:44
个人简介

推荐: blog.csdn.net/aquester https://github.com/eyjian https://www.cnblogs.com/aquester http://blog.chinaunix.net/uid/20682147.html

文章分类

全部博文(594)

分类: JavaScript

2015-03-19 10:58:19

HTML之onhashchange.pdf 

1.        onhashchange介绍

onhashchangeHTML5的特性,当前主流的新版本浏览器都支持,但IE7IE6不支持。

对于一个URL,如:http://aquester.cublog.cn#abc123,“#”后面的abc123即为hash内容,当它发生变化时,即会触发onhashchange事件,即使仅由http://aquester.cublog.cn变成http://aquester.cublog.cn#也会触发onhashchange事件。触发的方式可以是代码中改变,也可以是浏览器URL地址栏手工(Chrome中需要敲回车键)改变。

 

可以使用“if ("onhashchange" in window) {”来检测浏览器是否支持onhashchange特性。

 

安插onhashchange的两种方式:

1)       作为的属性

onhashchange="onchange()">

 

这种方式下,onchange()函数的定义位置没有要求,可以在 段,也可以在段,也可以放在段之后。

2)       作为windows对象的属性值

    if ("onhashchange" in window) {

        window.onhashchange = onchange;

    }

 

从上可以看出,onhashchangewindow对象的属性。

在这种方式下,onchange()函数的定义位置需要位于“window.onhashchange = onchange;”语句之前,如:

hash

2.        如何触发onhashchange

只需要修改localtion.hash,即会触发onhashchange,如:

onhashchange

 

onhashchange="onchange()">

   

123

   

 

 

1JS脚本安插在段和段的区别是什么?

答:安插在段时,会提前加载,按需加载就放到之后,加载顺序是:先 -> -> 之后。

 

2location介绍

可以将location简单理解成浏览器的地址栏,它有多个属性,可以浏览https://developer.mozilla.org/zh-CN/docs/Web/API/Location加以了解,常见的如:

location属性名

location属性说明

href

完整的URL,包括#部分

hash

仅指URL#部分

protocol

协议名称,如:http:,注意包括了一个冒号

host

URL的域名部分,如:aquester.cublog.cn

pathname

URL的域名之后的部分,如:http://aquester.cublog.cn/index.html中的“/index.html”为pathname,总是以“/”打头。

 

可以通过下面这样的代码来体验location各属性的值:

   

 

提问:HTML中的documentwindows有何区别?

 

阅读(3296) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~