jQuery选择页面重定向

问题描述 投票:0回答:3

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

更新:

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

jquery redirect jquery-selectors
3个回答
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>

0
投票

所以,这绝对不是最优雅的方式,我不想接受这个作为答案,希望有更好的事情发生。但是,通过使用:

let path = window.location.pathname;

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

只要用户访问该页面,就会执行此操作。我的主要问题是,当我重定向到登录页面后,这会导致2次重定向,并可能使网站上的用户感到困惑。


0
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.