javascript - 指令是有问题的 Bootstrap 导航-angularjs

标签 javascript css angularjs twitter-bootstrap

这是我的代码 - 它可以工作,但是如果有人在目标区域(文本标签)之外单击,则该指令不会触发。

指令:

//bootstrap change active menu class
app.directive('activeClass', function() {
    return {
        restrict: 'A',
        link: function(scope, element, attrs) {
            $(element).on('click', function() {
                $(".nav div").removeClass("activeTab");
                element.addClass("activeTab");
            });
        }
    };
});

Bootstrap 导航栏:

        <ul class="nav navbar-nav" ng-show="isMentor">
            <li >
                <a href="/home" data-toggle="collapse" data-target=".navbar-collapse"><div active-class>Home</div></a>
            </li>
            <li>
                <a href="/myGoals" data-toggle="collapse" data-target=".navbar-collapse"><div active-class>My goals</div></a>
            </li>
        </ul>

我希望该指令仅影响 div,但在单击标签时触发。我怎样才能做到这一点。谢谢。

最佳答案

将指令附加到 li ,然后像这样更改为 javascript:

app.directive('activeClass', function() {
return {
    restrict: 'A',
    link: function(scope, element, attrs) {
        $(element).on('click', function() {
            $(".nav div").removeClass("activeTab");
            element.find('div').addClass("activeTab");
        });
    }
};
});

关于javascript - 指令是有问题的 Bootstrap 导航-angularjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32922504/

相关文章:

javascript - react 服务器端渲染处理 `window` , `localStorage`

javascript - ui-router 找不到常量

javascript - AngularJs - 在 Controller 中使用工厂函数

javascript - AngularJS:我什么时候应该创建另一个 Controller ?

javascript - 使用 Javascript 在 Sharepoint 上打开嵌入的 Excel 工作簿

javascript - 区分鼠标与屏幕阅读器的点击事件

javascript - Google Chrome 是否支持 body onunload() 函数?

JavaScript - 无法调整 Canvas 大小

jquery - 如何使我的移动汉堡菜单居中并防止我的菜单在单击菜单项时消失?

html - 我无法用 HTML/CSS 编写此日历小部件的代码,有人可以试一试吗?