前段时间做的一个H5专题,用到了hash解决问题,特意记录一下。DOM hash的详细内容可以点击链接查看。
hash就是uri中#及后面的部分,例如:www.google.com.hk#123的#123。当只有hash部分发生变化时,浏览器的历史记录会产生记录,但不会向服务器发出请求,这时按后退键地址栏的uri会变化但页面内容不变。
当前 URL 的锚部分(以 '#' 号为开始) 发生改变时触发onhashchange 事件 :
window.addEventListener("hashchange",function(){var hash=location.hash.split("#")[1];
if(hash==="0" || typeof hash==="undefined"){
$("#iframe1").remove()
} else if(hash==="1"){
$(".longPage").removeClass("hide");
} else {
}
})