背景:特定のコンテンツを展開できる HTML ページがあります。このような展開ではページのごく一部のみを読み込む必要があるため、新しい URL/HTML ページに誘導するのではなく、JavaScript を介して読み込みます。ただし、おまけとして、ユーザーはそのような展開されたセクションにパーマリンクすることができます。つまり、他の人に次のような URL を送信します。
その他のユーザーのために「foobar」カテゴリがすぐに開かれるようにします。これはparent.location.hash = 'foobar'を使用して機能するため、その部分は問題ありません。
ここで質問:ユーザーがページ上のそのようなカテゴリを閉じたときに、URL フラグメントを再び空にしたい、つまり、 http : //example.com/#foobarをhttp://example.com/に変更して、パーマリンクの表示を更新します。 . ただし、これを使用するとページ全体がリロードされます (たとえば、Firefox 3 の場合)。これは避けたいと思います。を使用してもページのリロードはトリガーされませんが、URL に見栄えの悪い "#" 記号が残ります。一般的なブラウザで、ページを更新せずに「#」記号を含む URL アンカーを JavaScript で削除する方法はありますか?parent.location.hash = ''
window.location.href = '/#'