在静态html页面中处于活动状态的菜单

安德鲁

我有一个具有单个页眉和页脚的网站,并且在首页和关于页面中包括页眉和页脚,以及活动类的工作方式

<ul>
    <li><a class="active" href="">menu1</a></li>
    <li><a class="" href="">menu1</a></li>
    <li><a class="" href="">menu1</a></li>
</ul>

使用javascript和CSS是唯一的方法吗?

年轻

我知道它在那里无法正常运行,所以我给你我的git repo进行克隆:在此处输入链接描述(虚拟示例)。

注意:

  1. 您需要在主机中运行:http : //127.0.0.1 : 5500/index.html。或其他..我运行它与代码(实时服务器)
  2. 我通过匹配window.location.pathname和href url ..
  3. 也许有很多方法可以匹配当前路径的标签网址
  4. 如果您有问题,请发表评论。我也需要出于自己的目的解决这个问题

  // after page loaded  and page refresh  this will run to active current <a> tag
        window.addEventListener('DOMContentLoaded', (event) => {
            activeClass();
        });
       // after <a> button click
        document.querySelectorAll(".btn").forEach(function (btn) {
            btn.addEventListener("click", function (e) {
             
                activeClass();
            })
        })


        function activeClass() {
            document.querySelectorAll(".btn").forEach(function (btn) {

                // get href index.html or about.html or contact.html and add slash (/)
                var href = '/' + btn.getAttribute('href');

                // get path /index.html or /about.html or /contact.html from current url
                var pathname = window.location.pathname;

                // check click <a> element that contains .btn class
                if (btn.classList.contains('btn')) {

                    // check a href (/index.html) and current pathname (/index.html) are equal then add active class
                    if (href == pathname) {
                        btn.classList.add('active')
                        console.log('1')
                    }


                }

            });
        }
<a href="index.html" class="btn ">Home</a>
<a href="contact.html" class="btn ">Contact</a>
<a href="about.html" class="btn ">About</a>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

获取 url 并使菜单处于活动状态

来自分类Dev

如何保持下拉菜单处于活动状态并单击 selenium 中 iframes 下可用的子菜单?

来自分类Dev

将下拉菜单设置为在Laravel中处于活动状态

来自分类Dev

jQuery-在粘滞菜单中处于活动状态时,每个项目的背景颜色都不同

来自分类Dev

更改按钮:在CSS中处于活动状态

来自分类Dev

Bootstrap导航在Symfony中处于活动状态

来自分类Dev

MYSQL Count 在表中处于活动状态

来自分类Dev

Bootstrap菜单的最后一项始终处于活动状态

来自分类Dev

菜单打开时保持链接处于非活动状态

来自分类Dev

当子元素处于活动状态时使菜单项展开

来自分类Dev

左菜单栏处于活动状态,左右滑块动画

来自分类Dev

CSS使div在页面加载时处于活动状态

来自分类Dev

Ionic2-检查页面是否处于活动状态

来自分类Dev

选择多选顺序。页面加载时插件处于活动状态

来自分类Dev

如何知道哪个存档页面处于活动状态

来自分类Dev

CSS使div在页面加载时处于活动状态

来自分类Dev

使div处于活动状态

来自分类Dev

HTML / Angular中的控件处于活动状态时如何启用消息

来自分类Dev

javascript下拉菜单在单击时处于活动状态,而在外部单击时不处于活动状态

来自分类Dev

css菜单栏在html5中处于悬停状态

来自分类Dev

如果菜单处于活动状态或非活动状态,则切换图标的类。多级推菜单

来自分类Dev

如果菜单处于活动状态或非活动状态,则切换图标的类。多级推式菜单

来自分类Dev

下拉菜单仍处于活动状态时菜单项的背景色

来自分类Dev

仅在单选按钮处于活动状态时才“必需” HTML

来自分类Dev

如何使html处于非活动状态并显示正在加载的gif

来自分类Dev

仅使列表中的单击项在反应中处于活动状态

来自分类Dev

使用wordpress页面中的活动菜单

来自分类Dev

我如何知道用户在Winform场景中处于活动状态?

来自分类Dev

使主要内容区域在DrawerLayout中处于活动状态

Related 相关文章

  1. 1

    获取 url 并使菜单处于活动状态

  2. 2

    如何保持下拉菜单处于活动状态并单击 selenium 中 iframes 下可用的子菜单?

  3. 3

    将下拉菜单设置为在Laravel中处于活动状态

  4. 4

    jQuery-在粘滞菜单中处于活动状态时,每个项目的背景颜色都不同

  5. 5

    更改按钮:在CSS中处于活动状态

  6. 6

    Bootstrap导航在Symfony中处于活动状态

  7. 7

    MYSQL Count 在表中处于活动状态

  8. 8

    Bootstrap菜单的最后一项始终处于活动状态

  9. 9

    菜单打开时保持链接处于非活动状态

  10. 10

    当子元素处于活动状态时使菜单项展开

  11. 11

    左菜单栏处于活动状态,左右滑块动画

  12. 12

    CSS使div在页面加载时处于活动状态

  13. 13

    Ionic2-检查页面是否处于活动状态

  14. 14

    选择多选顺序。页面加载时插件处于活动状态

  15. 15

    如何知道哪个存档页面处于活动状态

  16. 16

    CSS使div在页面加载时处于活动状态

  17. 17

    使div处于活动状态

  18. 18

    HTML / Angular中的控件处于活动状态时如何启用消息

  19. 19

    javascript下拉菜单在单击时处于活动状态,而在外部单击时不处于活动状态

  20. 20

    css菜单栏在html5中处于悬停状态

  21. 21

    如果菜单处于活动状态或非活动状态,则切换图标的类。多级推菜单

  22. 22

    如果菜单处于活动状态或非活动状态,则切换图标的类。多级推式菜单

  23. 23

    下拉菜单仍处于活动状态时菜单项的背景色

  24. 24

    仅在单选按钮处于活动状态时才“必需” HTML

  25. 25

    如何使html处于非活动状态并显示正在加载的gif

  26. 26

    仅使列表中的单击项在反应中处于活动状态

  27. 27

    使用wordpress页面中的活动菜单

  28. 28

    我如何知道用户在Winform场景中处于活动状态?

  29. 29

    使主要内容区域在DrawerLayout中处于活动状态

热门标签

归档