[JavaScript] location.hash对浏览器历史记录的影响

location.hash被设置为不同的值后,会在浏览器中添加一条记录,点浏览器“后退”按钮会跳转到上一条记录。

location.hash的值改变后(设置为不同的值,或点浏览器“后退”按钮导致hash改变),会触发window.onhashchange事件。

hashchange事件的两种捕捉方法:

window.onhashchange=function(){
    //
};
window.addEventListener('hashchange',function(){
    //
},false);

浏览器差异:
(1)Chrome对页面载入过程中改变的hash不保存到记录中。
但对setTimeout或用户点击改变的hash,都保存到记录中。
(2)IE 11对所有hash的改变都保存到历史记录。

你可能感兴趣的:([JavaScript] location.hash对浏览器历史记录的影响)