location的hash部分和使用window.onhashchange实现ajax请求内容时使用浏览器后退和前进功能...
在js跨域雙向數(shù)據(jù)傳遞時(shí)可以用iframe加上location.hash來實(shí)現(xiàn),在研究這個(gè)的時(shí)候深入學(xué)習(xí)了一下hash的特性。
? hash就是uri中#及后面的部分,例如:www.google.com.hk#123的#123。當(dāng)只有hash部分發(fā)生變化時(shí),瀏覽器的歷史記錄會(huì)產(chǎn)生記錄,但不會(huì)向服務(wù)器發(fā)出請(qǐng)求,這時(shí)按后退鍵地址欄的uri會(huì)變化但頁面內(nèi)容不變。
? 而hash變化但不發(fā)出請(qǐng)求就是js跨域雙向數(shù)據(jù)傳遞的基礎(chǔ)啦。
? 下面就講述一下hash結(jié)合ajax的使用,ajax每次取數(shù)據(jù)時(shí)頁面更新后瀏覽器并不產(chǎn)生歷史記錄,也就是說后退和前進(jìn)按鈕失去應(yīng)用的效用,這時(shí)可以結(jié) 合hash和window.onhashchange來使用,注意ie6、7均不支持onhashchange,但可以用setInterval定期檢查 hash的改變,或者onload中檢查的方法。
? 具體實(shí)現(xiàn):
3.在使用window.onhashchange檢測(cè)hash值獲取歷史數(shù)據(jù)。
總結(jié)
以上是生活随笔為你收集整理的location的hash部分和使用window.onhashchange实现ajax请求内容时使用浏览器后退和前进功能...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript instanceo
- 下一篇: 20150905-Y1506401-19