Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengalih Keluar Hash URL Tanpa Menyegarkan Halaman Menggunakan JavaScript?
Mengalih keluar Cincang daripada URL Tanpa Muat Semula Halaman Menggunakan JavaScript
Apabila bekerja dengan URL, selalunya wajar untuk mengalih keluar serpihan cincang (#something ) tanpa menyebabkan halaman dimuat semula. Ini boleh dicapai menggunakan API Sejarah HTML5, yang membenarkan manipulasi bar lokasi.
Satu penyelesaian ialah:
window.location.hash = '';
Walau bagaimanapun, ini hanya mengalih keluar kandungan cincang, meninggalkan # simbol dalam URL.
Untuk penyelesaian yang lebih menyeluruh:
function removeHash() { history.pushState("", document.title, window.location.pathname + window.location.search); }
Kaedah ini berfungsi dalam Chrome, Firefox, Safari, Opera dan IE 10. Untuk penyemak imbas yang tidak menyokongnya, skrip degradasi yang anggun boleh digunakan:
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; } }
Dengan menggunakan teknik ini, anda boleh mengalih keluar cincang secara berkesan daripada a URL tanpa menyebabkan halaman dimuat semula, tanpa mengira sokongan penyemak imbas.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengalih Keluar Hash URL Tanpa Menyegarkan Halaman Menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!