2 回答

TA貢獻(xiàn)1877條經(jīng)驗 獲得超6個贊
添加事件偵聽器hashchange
,然后設(shè)置 URLwindow.history.pushState
window.addEventListener("hashchange", () => window.history.pushState({}, "", '/'), {});
#one {
? margin-top: 100%;
? width: 50px;
? height: 50px;
? background-color: red;
}
<a href="#one">Link</a>
<div id="one"></div>

TA貢獻(xiàn)1895條經(jīng)驗 獲得超7個贊
您可以使用以下命令監(jiān)聽窗口哈希的變化
window.addEventListener("hashchange", () => {}, false);
然后更新網(wǎng)址
window.history.pushState();
所以你會做
function hashHandler() {
? ? const loc = window.location.hash.split('#')[1];
? ? window.history.pushState({}, 'Page Title', '/' + loc);
}
window.addEventListener('hashchange', hashHandler, false);
請注意,它僅適用于 Chrome / FF / IE 10+。
添加回答
舉報