我有一系列 html 页面,其中包含指向信息页面的链接。在该页面的菜单中,我有一个返回到使用此代码的引用页面的链接:
<a class="nav_link" onclick="location.href = document.referrer;" onmouseover="this.style.cursor='pointer'">Return to Text</a>
第一次使用时它会按预期工作,但如果有人移动到另一个页面然后单击链接返回,有时会将他们带到旧的引用页面。因此,例如,如果有人从第 1 页转到我的引用页面,通过此 anchor 标记生成的链接返回,然后转到第 3 页并单击信息页面的链接,然后单击“返回文本”正如预期的那样,他们可能会第二次返回第 1 页而不是第 3 页。
我假设问题在于 document.referrer
存储在内存中,并且当用户第二次单击链接转到信息页面时没有被覆盖。这是为什么,有没有办法让我确保当他们单击链接返回时内存始终被清除,或者创建一个更强大的版本 location.href = document.referrer;
onclick?
最佳答案
如果您想要“反向链接”,最好使用 history.go(-1)
:
onclick="history.go(-1);"
这实际上模拟了后退按钮,而不是在历史记录中添加一个新条目并重复之前的 URL。
关于javascript - document.referrer 和多个 URL 的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32725452/