这段代码在FF中可以正常工作,它会将用户带回到上一页,但在Chrome中却不行:
<a href="www.mypage.com" onclick="javascript:history.go(-1)"> Link </a>
怎么解决?
c9x0cxw01#
您应该使用window.history并返回false,以便浏览器不导航href(默认行为)。
window.history
href
<a href="www.mypage.com" onclick="window.history.go(-1); return false;"> Link </a>
xkftehaa2#
使用下面的一个,它比history.go(-1)好得多。
history.go(-1)
<a href="#" onclick="location.href = document.referrer; return false;"> Go TO Previous Page</a>
6yt4nkrj3#
为什么不去掉内联javascript,改为这样做呢?内联javascript被认为是不好的做法,因为它已经过时了。备注为什么使用addEventListener?addEventListener是注册W3C DOM中指定的事件侦听器的方法。其优点如下:它允许为一个事件添加多个处理程序。这对于需要在使用其他库/扩展的情况下也能正常工作的DHTML库或Mozilla扩展特别有用。当监听器被激活时,它为你提供了更细粒度的阶段控制(捕获与冒泡)。它适用于任何DOM元素,而不仅仅是HTML元素。
<a id="back" href="www.mypage.com"> Link </a> document.getElementById("back").addEventListener("click", window.history.back, false);
在jsfiddle上
gcmastyq4#
试试看:
<a href="www.mypage.com" onclick="history.go(-1); return false;"> Link </a>
yi0zb3m45#
试试这个家伙,
<button onclick="goBack()">Go Back 2 Pages</button> <script> function goBack() { window.history.go(-2); } </script>
nnt7mjpx6#
这对我很有效。在 Google Chrome 上使用***javascript:history.go(-1)*没有问题。1.要使用它,请确保该选项卡上有历史记录。1.在输入URL**空间中添加javascript:history.go(-1)。1.它应工作几秒钟。
javascript:history.go(-1)
fcy6dtqo7#
javascript:history.go(-1);用于较旧的浏览器。IE6。有关其他浏览器的兼容性,请尝试
javascript:history.go(-1);
window.history.go(-1);
其中,-1表示要返回的页数(-1、-2...等),return false是防止默认事件所必需的。例如:
return false
<a href="#" onclick="window.history.go(-1); return false;"> Link </a>
qkf9rpyu8#
简单地使用这行代码,不需要在href属性中放置任何内容:
<a href="" onclick="window.history.go(-1)"> Go TO Previous Page</a>
ipakzgxi9#
使用一个带有指向某个页面的URL的链接,并让一个单击事件覆盖它,这不是一个好主意。如果用户在一个新的选项卡中打开该链接,该怎么办?请考虑:
<button id="back">Go back</button> <script> document.querySelector("#back").addEvenetListener("click", e => { history.go(-1); }); </script>
或者,如果您必须使用链接,则至少:
<a href="javascript:history.go(-1)">Go back</a>
9条答案
按热度按时间c9x0cxw01#
您应该使用
window.history
并返回false,以便浏览器不导航href
(默认行为)。xkftehaa2#
使用下面的一个,它比
history.go(-1)
好得多。6yt4nkrj3#
为什么不去掉内联javascript,改为这样做呢?
内联javascript被认为是不好的做法,因为它已经过时了。
备注
为什么使用addEventListener?
addEventListener是注册W3C DOM中指定的事件侦听器的方法。其优点如下:
它允许为一个事件添加多个处理程序。这对于需要在使用其他库/扩展的情况下也能正常工作的DHTML库或Mozilla扩展特别有用。当监听器被激活时,它为你提供了更细粒度的阶段控制(捕获与冒泡)。它适用于任何DOM元素,而不仅仅是HTML元素。
在jsfiddle上
gcmastyq4#
试试看:
yi0zb3m45#
试试这个家伙,
nnt7mjpx6#
这对我很有效。在 Google Chrome 上使用***
javascript:history.go(-1)
*没有问题。1.要使用它,请确保该选项卡上有历史记录。
1.在输入URL**空间中添加
javascript:history.go(-1)
。1.它应工作几秒钟。
fcy6dtqo7#
javascript:history.go(-1);
用于较旧的浏览器。IE6。有关其他浏览器的兼容性,请尝试
其中,-1表示要返回的页数(-1、-2...等),
return false
是防止默认事件所必需的。例如:
qkf9rpyu8#
简单地使用这行代码,不需要在href属性中放置任何内容:
ipakzgxi9#
使用一个带有指向某个页面的URL的链接,并让一个单击事件覆盖它,这不是一个好主意。如果用户在一个新的选项卡中打开该链接,该怎么办?
请考虑:
或者,如果您必须使用链接,则至少: