链接上的条件逻辑

时间:2019-04-10 17:29:00

标签: javascript wordpress

我怎样才能让链接按预期进入仅登录用户的页面?如果用户未登录,我想显示一个弹出登录表单。

PS-我是JS和StackOverflow的新手,所以请保持友好,如果我以后的问题应以不同的方式进行设置,请告诉我。

我尝试了许多不同的方法,并且能够使脚本显示警报,但不显示所需的动作。

这是链接HTML,如果用户已登录,则HTML链接应转到已定义的href值,如果已退出,则显示弹出窗口。

<a href="https://www.google.com" onclick="lockedContent()" id="bookOne">Go To New Page</a>

这是我正在使用的脚本,可以在需要执行的操作时使用帮助。

<script>
  function lockedContent(){
    if (document.body.classList.contains("logged-in")){
      //go to link defined in the href in the <a>
    } else {
      //display login popup
    }
  }
</script>

我希望该链接转到url中用于登录用户的所需href,并为未登录的用户显示一个弹出窗口。到目前为止,我似乎无法要么发生。

2 个答案:

答案 0 :(得分:0)

您可以使用window.location进行重定向。经过适当的授权后,您可以将logged-in类添加到正文,然后重定向

if (document.body.classList.contains("logged-in")) {
  // only after proper authorization 
  window.location.href = 'url of the page'
} else {
  // code to call modal display function
}

答案 1 :(得分:0)

您可以改用按钮​​,并根据更改window.location

检查用户是否登录

let loggedIn = true
function lockedContent(){
  if(loggedIn)
  {
    window.location.href = 'http://www.google.com'
    console.log(window.location.href)
  }
}
<button onclick="lockedContent()" id="bookOne">Go To New Page</button>