一般在做 ajax load 的時候,很多人都不會考慮到需要瀏覽器支持前進后退功能,因為大部分人都不知道可以實現。
最近遇到這個問題,經過一小段研究,發現github已經有現成的開源工具使用,主要實現原理是利用html的錨點,即<a href="#xxx">
主要demo代碼如下:
html
復制代碼 代碼如下:
<ul>
<li><a href="#ttt">ttttttttttttttt</a></li>
<li><a href="#aaa">aaaaaaaaaaaaaaa</a></li>
<li><a href="#bbb">bbbbbbbbbbbbbbb</a></li>
<li><a href="#eee">eeeeeeeeeeeeeee</a></li>
<li><a href="#mmm">mmmmmmmmmmmmmmm</a></li>
</ul>
<div>default content</div>
復制代碼 代碼如下:
<script type="text/javascript">
$(function() {
// 這里是共用的位置,通過state參數做操作
$.History.bind(function(state){
$('#showdiv').load('action/'+state+'.html');
});
// 這里是對某個鏈接做特殊操作
$.History.bind('bbb',function(state){
alert('點擊了 bbb 鏈接,這是對 bbb 鏈接特殊處理位置');
});
});
</script>
新聞熱點
疑難解答
圖片精選