Hash、onHashChange事件

简介: Hash、onHashChange事件

现在的web应用程序越来越多的使用ajax异步请求完成页面的无缝刷新,导致浏览器的URL不会发生任何变化而完成了请求,从而破换了用户浏览体验。同时本次浏览的页面内容在用户下次使用URL访问时将无法重新呈现。而解决该问题的一个途径便是使用window.location.hash属性及window的onhashchange事件。下面具体介绍几个使用过程中必须理解的要点:

1、hash值浏览器是不会随请求发送到服务器端的(即地址栏中#及以后的内容)。

2、可以通过window.location.hash属性获取和设置hash值。

3、如果注册onhashchange事件,设置hash值会触发事件。可以通过设置window.onhashchange注册事件监听器,也可以在body元素上设置onhashchange属性注册。

4、window.location.hash值的变化会直接反应到浏览器地址栏(#后面的部分会发生变化)。

5、同时浏览器地址栏hash值的变化也会触发window.location.hash值的变化,从而触发onhashchange事件。

6、当浏览器地址栏中URL包含hash如http://www.baidu.com/#home ,这时按下enter,浏览器发送http://www.baidu.com/请求至服务器,请求完毕之后设置hash值为#home,进而触发onhashchange事件。

7、当只改变浏览器地址栏URL的hash部分,这时按下enter,浏览器不会发送任何请求至服务器,这时发生的只是设置hash值新修改的hash值,并触发onhashchange事件。

8、html 标签属性href可以设置为页面的元素ID如#top,当点击该锚链接时页面跳转至该id元素所在区域,同时浏览器自动设置window.location.hash属性,同时地址栏hash值发生改变,并触发onhashchange事件。

相关文章
|
7月前
|
存储 JSON NoSQL
Redis第五弹-HASH结构相关指令和介绍,计数功能Hash-哈希(Redis本来就是键值对结构,哈希,就相当于键值对嵌套了一个键值对)的多种指令Hset key field value-
Redis第五弹-HASH结构相关指令和介绍,计数功能Hash-哈希(Redis本来就是键值对结构,哈希,就相当于键值对嵌套了一个键值对)的多种指令Hset key field value-
|
7月前
|
JavaScript
.V-for中 key 值的作用,如何选择key
.V-for中 key 值的作用,如何选择key
147 4
|
7月前
|
JavaScript
V-for中 key 值的作用,如何选择key
V-for中 key 值的作用,如何选择key
30 0
|
JavaScript 算法 索引
v-for中key值的作用
v-for中key值的作用
|
8月前
|
JavaScript 索引
V-for中key值的作用,如何选择key
V-for中key值的作用,如何选择key
51 0
|
数据安全/隐私保护 Python
散列函数(Hash Function)
散列函数(Hash Function)是一种将任意大小的数据映射到固定大小的数据的函数。通常,散列函数将输入数据转换成固定长度的输出,称为散列值(Hash Value),散列值通常是一串数字和字母组成的固定长度的字符串。散列函数可以用于数据加密、数据完整性检查、数据压缩等方面。
166 1
|
小程序 JavaScript 索引
小程序v-for与key值使用
小程序v-for与key值使用
191 0
|
前端开发
根据key值过滤形成新得数组
根据key值过滤形成新得数组
77 0
|
机器学习/深度学习 存储 Cloud Native
817. 链表组件:哈希表+flag
这是 力扣上的 817. 链表组件,难度为 中等。