javascript - 获取点击它的导航项的名称

标签 javascript jquery html css twitter-bootstrap

我有一个在 Bootstrap 中设计的 navbar,我想获取它被点击的 nav-item 的名称。我可以将其设置为当前处于事件状态但无法检索导航项的名称。如何做到这一点?

我知道 jQuery 中的 nodeName 获取节点的名称,但显然我想获取该节点内的内容。

HTML

<div class="collapse animated fadeInLeft" id="navbarNav">
    <ul class="navbar-nav">
        <li class="nav-item active"> <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> </li>
        <li class="nav-item"> <a class="nav-link" href="#">Features</a> </li>
        <li class="nav-item"> <a class="nav-link" href="#">Pricing</a> </li>
        <li class="nav-item"> <a class="nav-link disabled" href="#">Disabled</a> </li>
    </ul>
</div>

js

$(document).ready(function () {
    "use strict";
    $('ul.navbar-nav > li').click(function (e) {
        e.preventDefault();
        var getItem = $(this);
        $('ul.navbar-nav > li').removeClass('active');
        $(this).addClass('active');
        $(".navbar-brand").after(" <ul class=\"navbar-nav\"><li class=\"nav-item active\"> <a class=\"nav-link\" href=\"#\">" + getItem + "<span class=\"sr-only\">(current)<\/span><\/a> <\/li><\/ul> ");
        $('.navbar-toggler').click();
    });
});

我的当前输出是 [object][object] 但我想获取 Home(如果它当前处于事件状态)或 Pricing(如果它当前处于事件状态)活跃。

附言:使用 Bootstrap 4

最佳答案

$(this)li对象,你想这样使用$(this).text()

   $('ul.navbar-nav > li').click(function (e) {
        e.preventDefault();
        var getItem = $(this).text();
        $('ul.navbar-nav > li').removeClass('active');
        $(this).addClass('active');
        $(".navbar-brand").after(" <ul class=\"navbar-nav\"><li class=\"nav-item active\"> <a class=\"nav-link\" href=\"#\">" + getItem + "<span class=\"sr-only\">(current)<\/span><\/a> <\/li><\/ul> ");
        $('.navbar-toggler').click();
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="collapse animated fadeInLeft" id="navbarNav">
            <ul class="navbar-nav">
                <li class="nav-item active"> <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> </li>
                <li class="nav-item"> <a class="nav-link" href="#">Features</a> </li>
                <li class="nav-item"> <a class="nav-link" href="#">Pricing</a> </li>
                <li class="nav-item"> <a class="nav-link disabled" href="#">Disabled</a> </li>
            </ul>
        </div>

		<div class="navbar-brand"></div>

关于javascript - 获取点击它的导航项的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41749293/

相关文章:

javascript - Flux:具有相同存储、不同状态的多个容器

javascript - add(1)(2)(3).total === 6 - 还有其他人见过这样使用自返回函数吗?

javascript - knockout 脚本不起作用

html - 为什么没有 <flex> 或 <grid> 元素?

javascript - Electron 根据命令重新加载特定的 JS 文件

javascript - 如何为下拉菜单添加滚动条

jquery - 如何控制悬停在 select2 tagbox 容器上

Jquery 按类别选择

javascript - 使用 HTML anchor 标记在 Electron 中打开外部链接

html - 在不更改 url 的情况下在 Django 页面上提交表单