2012-01-17 2 views
2

従来の「バック」動作を模倣するために、特定のアクションをURLハッシュの存在に付けました。ハッシュの削除をキャプチャします。

ハッシュから戻った場合、ハッシュはURL文字列から削除されますが、JavaScriptはハッシュが消えたことを認識しません。

ハッシュを削除するにはどうすればよいですか?

+0

ハッシュチェンジイベント( 'onhashchange') – noob

答えて

0

window.location.hash文字列をチェックし、それが変更を検出するためにポーリングwindow.location.hrefあなたのURLのハッシュ部分

1

通常、クリックが先に進み、場所が変更されます。 クリックした後、TimeOut を設定して、以下に示すように更新されたwindow.location.hashを取得することをお勧めします。

$(".nav").click(function(){ 
    setTimeOut(function(){ 
     updatedHash = location.hash 
    },100); 
    }); 

か、と場所について聞くことができます:私はあなたが何をしたいかのような何かをするjQueryプラグインを書いた

window.onhashchange = function(evt){ 
     updatedHash = "#" + evt.newURL.split("#")[1] 
    }; 

https://github.com/rgarro/Route32これは単純なアンカールータです。

関連する問題