我正在尝试突出显示Bootstrap导航栏上的选定项目.
这是我的代码:
这是我的代码:
<ul class="nav navbar-nav navbar-left" top-bar>
和指令:
a.directive('topBar',function () { return { restrict: 'AE',link: function (scope,elem,attrs) { $(elem).on("click",function () { $(elem).find(".active").removeClass("active"); $(this).parent().addClass("active"); }); } }
});
它只有在我删除class =“nav navbar-nav navbar-left”时才有效.否则,它没有进入指令.有什么建议?
谢谢
解决方法
我想你想要听取组件中列表项(标签li)的点击并更新它的类.尝试使用
event delegation – 如果您使用的是jQuery,只需在通话中添加额外的选择器:
a.directive('topBar',function () { return { restrict: 'AE',attrs) { elem.on("click","li",function (e) { elem.find(".active").removeClass("active"); $(this).addClass("active"); }); } }; });