jQuery选择页面重定向

时间:2019-02-13 09:28:26

标签: jquery redirect jquery-selectors

我只是想知道,即使用户只是在搜索栏中输入URL,也可以检测页面重定向吗?我知道有一些选择器,例如a[href^="https://some-website.com",但我正在寻找比这更通用的东西。所有建议表示赞赏。

更新

更具体地说,我的目标是检测是否正在访问特定的URL。然后,如果该用户未登录,则将其重定向到登录URL。我已经有了jQuery,可以检查用户是否未登录以及页面重定向,只是缺少URL重定向检测。

3 个答案:

答案 0 :(得分:0)

window.location.replace(...)优于使用window.location.href,因为replace()不会将原始页面保留在会话历史记录中,这意味着用户不会陷入永无休止的回退中,按钮惨败。

<form>
   <input type="text" class="url">
   <input type="submit" class="submit">
</form>


<script>
    $(document).ready(function(){
         $('.submit').on('click',function(){
             // similar behavior as an HTTP redirect
             window.location.replace($('.url').val());

             // similar behavior as clicking on a link
             window.location.href = $('.url').val();
         });
    });
</script>

答案 1 :(得分:0)

因此,这绝对不是解决此问题的最优雅的方法,我不想接受此作为答案,希望能有更好的解决方案。但是,通过使用:

let path = window.location.pathname;

if(path == "/YourPathHere"){
    //Some code here
}

这将在用户进入该页面时执行。就我而言,主要问题是,当我之后重定向到登录页面时,这将导致2次重定向,并可能使网站上的用户感到困惑。

答案 2 :(得分:0)

您应该查看Cookie。如果您的用户登录,则您设置一个cookie,例如“ Login” = True

然后,如果您的cookie是“登录”,则在每个必须登录的站点上检查cookie!= true window.location ='url'