javascript - 如果 url 是根域,则将 class 添加到 id

标签 javascript jquery css

我想在我的网站上获取用户 url。我想显示用户 url 是否是 root domain,将 active class 添加到 id 主页元素菜单。如果没有,什么都不做。

我正在使用 window.location.hrefwindow.location.host 但没有用。

对于其余部分,我使用的是 indexof(以及 url 包含的字符串),但是因为根域没有任何字符串,所以我不知道该怎么做。

  <nav class="cl-effect-5">
            <li class="nav-item" id="home-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#home"><span data-hover="HOME">HOME</span></a>
            </li>
                    </nav>
                  <nav class="cl-effect-5">
            <li class="nav-item" id="rucab-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#rucab"><span data-hover="RUCAB">RUCAB</span></a>
            </li>
             </nav>
                    <nav class="cl-effect-5">
            <li class="nav-item" id="inscripciones-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#inscripciones"><span data-hover="INSCRIPCIONES">INSCRIPCIONES</span></a>
            </li>
             </nav>
             <nav class="cl-effect-5">
            <li class="nav-item" id="habitaciones-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#habitaciones"><span data-hover="HABITACIONES">HABITACIONES</span></a>
            </li>
             </nav>
              <nav class="cl-effect-5">
            <li class="nav-item" id="staff-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#staff"><span data-hover="STAFF">STAFF</span></a>
            </li>
             </nav>
             <nav class="cl-effect-5">
            <li class="nav-item" id="blog-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#contact"><span data-hover="BLOG">BLOG</span></a>
            </li>
             </nav>
                    <nav class="cl-effect-5">
            <li class="nav-item" id="contacto-item-menu">
                <a class="nav-link menu-rucab js-scroll-trigger" href="#contacto"><span data-hover="CONTACTO">CONTACTO</span></a>
            </li>
             </nav>

JQuery/Javascript

$( document ).ready(
    function() {
var url = window.location.href;
var host = window.location.host;
if(url.indexOf('http://' + host + '/') != -1) {
    document.getElementById("home-item-menu").classList.add("active");
}
if (document.URL.indexOf("habitaciones") > -1)
{
    document.getElementById("habitaciones-item-menu").classList.add("active");

} else if (document.URL.indexOf("contacto") > -1) {
    document.getElementById("contacto-item-menu").classList.add("active");

} else if (document.URL.indexOf("rucab") > -1) {
    document.getElementById("rucab-item-menu").classList.add("active");

} else if (document.URL.indexOf("inscripciones") > -1) {
    document.getElementById("inscripciones-item-menu").classList.add("active");

} else if (document.URL.indexOf("staff") > -1) {
    document.getElementById("staff-item-menu").classList.add("active");

} else if (document.URL.indexOf("blog") > -1) {
    document.getElementById("blog-item-menu").classList.add("active");

}
});

最佳答案

您可以使用条件window.location.pathname === '/':

if(window.location.pathname === '/') {
    document.getElementById("home-item-menu").classList.add("active");
}

关于javascript - 如果 url 是根域,则将 class 添加到 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55497747/

相关文章:

html - 选择了类似导航栏的语言

html - div 高度取决于剩余空间

javascript - 如何导入已在 &lt;script type ="module"> 标签中定义的 es6 模块 inside html?

javascript - 按事件宽度调用方法 JS OOP(原型(prototype))

Javascript加密文件上传

javascript - 我如何在动态生成的 html 表中检查我的值是否为 null

javascript - 我无法显示没有重复的随机图像

javascript - 折叠 HTML5 Adob​​e 扩展面板时会触发什么事件?

javascript - 页面内 "anchor"滚动链接仅在移动版本上无法滚动到正确的位置

html - 如何让这个响应式 CSS 在 Gmail for Android 上运行?