如何检测返回显示的页面?
How do I detect that a page is shown from coming back?
我们的主页是一个空白页面,它会检测浏览器的语言并自动将访问者重定向到他的语言页面。那里的后退按钮(例如使用 Firefox)确实会返回我们的主页,不幸的是,这又把他带到了他的语言页面。访问者似乎被我们的页面捕获了,后退按钮不再起作用。
那我怎么才能在我们的主页上检测到它是通过返回来执行的呢?然后我会让 Javascript 再次按下后退按钮,而不是再次引导访问者进入循环。
主页上的重定向适用于所有语言。主页本身没有更多内容。重定向由 window.open:
<script language="javascript" type="text/javascript">
language = (navigator.userLanguage || navigator.language);
language = language.substring(0,2);
switch (language) {
case 'fr':
window.open("fr/index.html",'_self');
break;
case 'de':
window.open("de/index.html",'_self');
break;
default:
window.open("en/index.html",'_self');
break;
}
</script>
js 中的语言独立代码。
<script>
function goBack() {
window.history.back();
}
</script>
<button onclick="goBack()">Go Back</button>
请试试这个。
我用 window.sessionStorage 知道主页被第二次调用(通常来自其中一个语言页面的后退按钮):
<script language="javascript" type="text/javascript">
if (window.sessionStorage.getItem("goBack")=="True"){
window.sessionStorage.setItem("goBack","False"); window.history.back();
}
else {
window.sessionStorage.setItem("goBack","True");
language = (navigator.userLanguage || navigator.language);
language = language.substring(0,2);
switch (language) {
case 'fr':
window.open("fr/index.html",'_self');
break;
case 'de':
window.open("de/index.html",'_self');
break;
default:
window.open("en/index.html",'_self');
break;
}
}
</script>
感谢大家的评论和回答。你带我走上了正确的道路!
我们的主页是一个空白页面,它会检测浏览器的语言并自动将访问者重定向到他的语言页面。那里的后退按钮(例如使用 Firefox)确实会返回我们的主页,不幸的是,这又把他带到了他的语言页面。访问者似乎被我们的页面捕获了,后退按钮不再起作用。
那我怎么才能在我们的主页上检测到它是通过返回来执行的呢?然后我会让 Javascript 再次按下后退按钮,而不是再次引导访问者进入循环。
主页上的重定向适用于所有语言。主页本身没有更多内容。重定向由 window.open:
<script language="javascript" type="text/javascript">
language = (navigator.userLanguage || navigator.language);
language = language.substring(0,2);
switch (language) {
case 'fr':
window.open("fr/index.html",'_self');
break;
case 'de':
window.open("de/index.html",'_self');
break;
default:
window.open("en/index.html",'_self');
break;
}
</script>
js 中的语言独立代码。
<script>
function goBack() {
window.history.back();
}
</script>
<button onclick="goBack()">Go Back</button>
请试试这个。
我用 window.sessionStorage 知道主页被第二次调用(通常来自其中一个语言页面的后退按钮):
<script language="javascript" type="text/javascript">
if (window.sessionStorage.getItem("goBack")=="True"){
window.sessionStorage.setItem("goBack","False"); window.history.back();
}
else {
window.sessionStorage.setItem("goBack","True");
language = (navigator.userLanguage || navigator.language);
language = language.substring(0,2);
switch (language) {
case 'fr':
window.open("fr/index.html",'_self');
break;
case 'de':
window.open("de/index.html",'_self');
break;
default:
window.open("en/index.html",'_self');
break;
}
}
</script>
感谢大家的评论和回答。你带我走上了正确的道路!