JavaScript を使用してページを更新せずに URL からハッシュを削除する
URL を操作する場合、ハッシュ フラグメント (#something) を削除することが望ましいことがよくあります。 ) ページを更新せずに。これは、ロケーション バーの操作を可能にする HTML5 History API を使用して実現できます。
1 つの解決策は次のとおりです。
window.location.hash = '';
ただし、これではハッシュのコンテンツが削除されるだけで、# は残ります。
より包括的なソリューションの場合:
function removeHash() { history.pushState("", document.title, window.location.pathname + window.location.search); }
このメソッドは次の環境で機能します。 Chrome、Firefox、Safari、Opera、および IE 10。これをサポートしていないブラウザの場合は、正常な劣化スクリプトを使用できます。
function removeHash() { var scrollV, scrollH, loc = window.location; if ("pushState" in history) history.pushState("", document.title, loc.pathname + loc.search); else { // Prevent scrolling by storing current scroll offset scrollV = document.body.scrollTop; scrollH = document.body.scrollLeft; loc.hash = ""; // Restore scroll offset to avoid flickering document.body.scrollTop = scrollV; document.body.scrollLeft = scrollH; } }
この手法を利用すると、ハッシュを効果的にファイルから削除できます。ブラウザのサポートに関係なく、ページを更新しない URL。
以上がJavaScript を使用してページを更新せずに URL ハッシュを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。