假设我在地址栏中有这个URL:
www.example.com/pt.html#myhash
我还有一个链接到的锚
<a id="lang" href="https://www.example.com/en.html">Change Language</a>
我想要归档的是将#myhash标记附加到该锚点,但前提是它存在于当前URL中。如果没有,请不要附加任何内容。
检查是否设置了window.location.hash
并且它不仅仅是'#'
,然后应用于锚点
// for demo only set hash
history.pushState(null, null, '#someVal')
const urlHash = location.hash,
langLink = document.querySelector('#lang');
if (urlHash && urlHash !== '#') {
langLink.hash = urlHash;
}
console.log('New href=',langLink.href)
<a id="lang" href="https://www.example.com/en.html">Change Language</a>