【问题标题】:Setting up an if statement with window.location.origin in JS在 JS 中使用 window.location.origin 设置 if 语句
【发布时间】:2020-09-30 17:59:53
【问题描述】:

我希望删除我正在构建的网站的登录页面上的导航菜单。但是,我不知道如何只定位该页面。我对其他页面执行此操作的方式是,当我想定位特定页面时,我会编写 (window.location.pathname.includes("/pathname"))。

但如果我想定位网站的来源 (www.hostname.com),我似乎无法在不删除所有其他页面上的导航菜单的情况下执行此操作,因为它们都共享相同的主机名。

这是我要执行的功能:

function landingPage() {
  if (window.location.origin === "www.something.com") {
    document.querySelector(".main-navigation").remove("#primary-menu");
    document.querySelector(".site-branding").remove(".custom-logo");
  }
}

【问题讨论】:

标签: javascript location hostname pathname


【解决方案1】:

如果您想定位网站上的特定页面,那么您需要检查location.hreflocation.pathname,就像检查其他页面一样。

来源定义了整个网站,而不是它的主页。

【讨论】:

    【解决方案2】:
    function landingPage() {
      if (window.location.hostname === "www.something.com"  && window.location.pathname==="/") {
          /*Your Condition Comes here */
      }
    }
    

    window.location.hostname 将返回您网站的主机名。您可以比较主机名并编写您要添加的所需条件。

    了解更多点击window location

    【讨论】:

      【解决方案3】:

      如果将window.location.originwindow.location.pathname 条件结合起来会怎样?

      window.location.pathname 应返回 "/",如果您位于着陆页而不是子页上。

      【讨论】:

      • 我使用 (window.location.pathname === "/") 管理执行函数
      猜你喜欢
      • 2020-04-10
      • 1970-01-01
      • 2017-03-10
      • 1970-01-01
      • 2014-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多