2011-06-30 8 views
0

onhashchangeイベントを使用してURLハッシュ(a.k.a.フラグメント)を監視しようとしています。これにより、ハッシュに格納しているパラメータに基づいて適切なajax呼び出しを行うことができます。残念ながら、私のハッシュを予期せず変更することがあります。私のコードでは、window.location.hashを使用する場所は1つしかなく、ハッシュの値を変更しないで単純にチェックしています。私は前後のボタンがハッシュを変更できることを知っていますが、私はそれらに触れていません。ハッシュ変更がどこから来ているかをどのようにして知ることができますか?URLハッシュが変更される原因は何ですか?


更新

[OK]を...それを考え出しました。そして、はい、私はダミーですが、私は私のようなもののために私の調査結果を残しています。私はハッシュをプログラム的に変更するものを探していましたが、実際にはhref="#"でアンカーをクリックしていました。これらにフックされたイベントハンドラがあり、戻り値をfalseに設定して、URLを変更できないようにしました。

+0

コード内で「location.hash」を検索しようとしたとしますか? – bezmax

答えて

1

内部アンカーをターゲットとするリンクがハッシュを変更します。例:

<a href="#contact">Contact Us</a> 

クリックすると、ハッシュが#contactに変更されます。

また、サードパーティ製のJavaScriptライブラリを使用している場合は、そこにあるコードの一部が変更されている可能性があります。

ハッシュはどのように変更されますか?何から?いつ?変更を引き起こす正確な状況を特定できれば、それによって何が変更されているかがわかるはずです。

+0

ビンゴ - それは正しい – JnBrymn

関連する問題