0

我需要强制登录以访问我的网站,因此当访问者显示一个页面时,我会将他重定向到登录页面,并且只有当他登录或注册到我的网站时,我才会再次将他重定向到他访问的原始页面. 问题出在最后一步,我无法重定向到原始页面,因为在第一次重定向之前 url 没有保存在历史记录中

对于我用于非用户的第一个重定向

<script type="text/javascript">
window.location.href = '/login-guest';
</script> 

对于第二次重定向,登录或注册后我使用

<script type="text/javascript">
history.back(-1);
</script>

我想我需要在第一次重定向之前添加一个脚本来将 url 添加到历史记录

TX,最好的问候

4

1 回答 1

0

您可以尝试使用 HTML5 sessionStorage 将用户网页存储在第一个脚本中,然后在第二个脚本中检索它

编辑:现在使用代码:

编辑 2:现在使用 onpageload

由于这个 onload() 你不能将 checkPage 函数移动到正文

第 1 页:

 <!DOCTYPE html>
 <html>
 <head>
 <script>
 function checkPage(){
    if(sessionStorage.visited != 1){
        sessionStorage.startingPage = document.URL;
        window.location.href = 'sessionstorage2.html';
    }
    else{
        return;
    }
 }
 </script>
 </head>
 <body onload='checkPage()'>
 text or something

 <br><br>

 <script>
 function reset(){
    sessionStorage.visited = 0;
 }
 </script>
 <button onclick='reset()'>Reset Function</button>
 </body>
 </html>

第2页:

<!DOCTYPE html>
<html>
<body>
<script>
function return(){
    window.location.href = sessionStorage.startingPage;
    sessionStorage.visited = 1;
}
</script>
<p><button onclick="return()" type="button">Return to Page 1</button></p>
</body>
</html>
于 2013-09-03T17:41:20.063 回答