我正在尝试做这项工作
<script>
document.write('<button onclick="location.href=' + document.referrer + '">Go back</button>');
</script>
它应该只是一个简单的“后退”按钮到预览页面。 当我这样做“a href”时,它可以工作
<script>
document.write('<a href="' + document.referrer + '">Go back</a>');
</script>
但是当尝试将它作为“按钮”时它会失败。按钮在那里,但没有导航到预先设置的页面
答案 0 :(得分:4)
将另一个转义引号添加到href正文中(以及最后的分号,虽然我不知道这是否会产生影响)并查看是否有效......
<script>
document.write('<button onclick="location.href=\'' + document.referrer + '\';">Go back</button>');
</script>
答案 1 :(得分:3)
您还可以使用以下方式实现本地回复:
window.history.back();
//in your onclick="history.back()"
//also can try with:
//javascript:history.go(-1)">
或者调用一个函数检查history.back()是否在浏览器中可用,否则实现自定义后退函数/代码,如此处所示(我更喜欢从html中取出代码,只需处理我的onclick)功能)
Using javascript history.back() fails in Safari .. how do I make it cross-browser?
对于强大的解决方案,请检查history.js:
答案 2 :(得分:2)
你错过了href中URL的引号,所以请尝试像这样转义它(对我有用)
document.write('<button onclick="location.href=\'' + document.referrer + '\'">Go back</button>');