Javascript”;返回“;链接,显示网址(如果有的话)

Javascript "Go Back" link which shows the url if there is any

本文关键字:如果 显示 返回 链接 Javascript      更新时间:2023-09-26

我想在我的网站内部页面中放一个"返回"链接。我可以简单地使用的代码是:

<script>document.write('<a href="#" onClick="history.go(-1); return:false;"></a>')</script>

但当有人在上面悬停时,它不会显示上一页的url,而且如果没有上一页(比如在新选项卡中打开链接),它也不会工作。所以我需要一个代码,它只在有上一个页面时出现,还显示url。如果有人知道一个好办法,我将不胜感激。。

document.referrer是我的建议。

制作一个隐藏的div并在该div中放置链接。

<div id="NavBack">//hide it
    <a>link here</a>
</div>

加载文档时,请检查是否存在类似"上一个URL"的内容。如果是,则显示#NavBack,该链接可以向后导航或隐藏。参考本

我已经用代码补丁更新了答案,给你提示。

<div id="NavBack" style="display:none;">
    <a id='test'>link here</a>
</div>
<script type="text/javascript">
if(document.referrer!=''){
    var a = document.getElementById("test");
    a.href=document.referrer;
    document.getElementById("NavBack").style.display='block';
}
</script>

我已经使用了上面的代码,它已经完美地工作了。不过,让我明确一点,这不是标准的方式,这只是给你一个我想告诉你的想法。请使用jquery而不是javascript,并且不要在项目中提供内联CSS。

您可以使用MDN 中描述的history对象

var h = window.history;
hSize = h.length; // is there any history
h.back();

还要检查浏览器对这些方法的支持。

您必须使用window.history.length检查是否存在历史记录条目。如果大于零,则插入链接。

另请参阅:

https://developer.mozilla.org/en-US/docs/DOM/window.history

https://developer.mozilla.org/en-US/docs/DOM/Manipulating_the_browser_history