我一直试图找出一种方法,当用户点击转义按钮时,当用户点击浏览器后退按钮时,它只会重定向到它替换的网页。我发现代码运行得很好:
<?php
$date = "10.06.2015 09:25:52";
echo Datetime::createFromFormat('d-m-Y h:i:s', $date)->format('Y-m-d h:i:s');
?>
function getAway() {
// Get away right now
window.open("http://weather.com", "_newtab");
// Replace current site with another benign site
window.location.replace('http://google.com');
//Prevents back button from going back to website
}
$(function() {
$("#get-away").on("click", function(e) {
getAway();
});
$("#get-away a").on("click", function(e) {
// allow the (?) link to work
e.stopPropagation();
});
});
function checkStorage() {
var myVar = sessionStorage.getItem("myVar");
if (myVar != undefined) {
window.history.forward();
}
}
function check() {
sessionStorage.setItem("myVar", "true");
}
这就是我正在做的事情,我添加了html代码和转义按钮代码以及你向我展示的代码
答案 0 :(得分:1)
如果在按下“退出”按钮后,您希望用户重定向到其他某个页面并且不希望他/她返回,即使他们在浏览器中按“返回”,那么您可以执行此操作。 / p>
在body标签中包含onload事件,
<body onload="checkStorage()">
<!--You body content-->
</body>
现在使用以下脚本
<script type="text/javascript">
function checkStorage() {
var myVar = sessionStorage.getItem("myVar");
if (myVar != undefined) {
window.history.forward();
}
}
function check() {
sessionStorage.setItem("myVar", "true");
//the URL you want the user to get redirected to when
//they press "Escape" button
window.location.replace("http://www.saumilsoni.me");
}
</script>
UPDATE:如果您已经在onload
上调用了某个函数,则可以使用回调函数的概念,因为在onload
中定义多个函数可能会在某些浏览器中出现问题。这是你可以做的,
<body onload="checkStorage()">
<!--You body content-->
</body>
<script>
function checkStorage(){
var myVar = sessionStorage.getItem("myVar");
if (myVar != undefined) {
window.history.forward();
}else{
//call the function here that you previously called onload
yourFunction();
}
}
</script>
答案 1 :(得分:0)
我会恳求你不要break the back button。我们知道打破后退按钮since the nineteen-nineties是个坏主意。
用户期望他们的浏览器如何工作,当你故意破坏正常工作的方式时,你会感到沮丧,烦恼,甚至可能会激怒他们。如果您的网站以不可预测或非标准的方式运行,许多人将拒绝使用您的网站。很容易意外地使事情难以使用,故意让你的网站更难使用是一个坏主意。