gpt4 book ai didi

javascript - 选择新元素时如何更改事件的
  • 元素?
  • 转载 作者:太空宇宙 更新时间:2023-11-04 03:41:05 25 4
    gpt4 key购买 nike

    我正在处理一个 ASP .NET 元素,我在页面的一侧有一个导航栏。

    <div class="navbar-inverse" role="navigation">
    <div class="collapse navbar-collapse navbar-ex1-collapse">
    <ul class="nav navbar-nav side-nav">
    <li class="active">@Html.ActionLink("Dashboard", "Index", "Home", null, null)</li>
    <li>@Html.ActionLink("Marketing", "Marketing", "Home", null, null)</li>
    <li>@Html.ActionLink("Sales Overview", "SalesOverview", "Home", null, null)</li>
    </ul>
    </div>
    </div>

    事件元素当然是第一个。在导航栏上,这意味着该特定选择比其他选择稍微暗一些。当我单击 navbar 中的不同选择时, 但是,这仍然是积极的行动。我是 html 的新手,我想到的解决方案是分配每个 <li>一个idonclick然后编写一些 javascript 将该 id 的类更改为在单击时激活。

    这似乎是一种迂回的方式来做一些应该包含在 <ul> 中的事情。 .所以我的问题是是否有一种更简单的方法可以更好地扩展(这里的意思是,我可能会向导航栏添加更多的东西,我不希望每个东西都有一个 onclick 方法)。

    以上代码在Shared/~Layout中,顺便说一句,不像为每个页面定义单独但相似的 View 那么简单,这个 View 实际上需要以某种方式更新。

    最佳答案

    如果你会使用 jQuery,那么试试这个:

    $(document).ready(function(){
    var $lis=$('.nav li');
    $lis.click(function(){
    $lis.removeClass('active');
    $(this).addClass('active');
    });
    });

    //更新

    $(document).ready(function(){
    var pathname = window.location.pathname;
    var $lis=$('.nav li');
    $lis.click(function(){
    $this = $(this);
    if (pathname == $this.find('a').attr('href')) {
    $lis.removeClass('active');
    $this.addClass('active');
    }
    });
    });

    关于javascript - 选择新元素时如何更改事件的 <li> 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24890563/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com