AngularJS 导航栏动态添加.active
在传统jQuery中,实现导航栏动态添加.active类的思路比较简单,就是当点击的时候,清除其他.active,然后给当前类加上.active。
但是在AngularJS中,就不能再采用这种jQuery思维来实现了。
思路如下:
1、定义items,存储导航栏的内容
2、在html中,用ng-repeat 指令去变量items,输出导航栏的内容
3、用ng-class{'active', isActive(item.href)} 指令去判断当前的url与item.href是否相等,相等则加上.active
4、在controller的函数中 isActive(href)去判断,如果二者相等返回true
JS代码
 .controller('HeaderCtrl', ['$scope','$location', function ($scope,$location) {
         $scope.items = [{
             id: '1', name: '首页', href: '#/'
         },{
             id: '2', name: '活期', href: '#/product/tmb'
         },{
             id: '3', name: '定期', href: '#/product/dcb'
         },{
             id: '4', name: '添牛', href: '#/product/tnb'
         },{
             id: '5', name: '安全', href: '#/security'
         },{
             id: '6', name: '账户', href: '#/profile'
         }]
         $scope.selected = 1;
         $scope.isActive = function (current) {
             var href = '#'+$location.url();
             return current === href;
         }
     }])
HTML代码
<ul id="nav1" class="nav nav-pills" role="tablist">
<li role="presentation" ng-repeat="item in items">
<div class="header_home" ng-class="{'active':isActive(item.href)}">
<a ng-href="{{item.href}}" ><span class="h4">{{item.name}}</span></a>
</div>
</li>
</ul>
AngularJS 导航栏动态添加.active的更多相关文章
- 导航栏动态添加act属性
		
最近做了一个网站,需要设置导航栏的act属性,这里需要用到addClass以及removeClass: $('#topName li').removeClass('active'); $(this). ...
 - 右侧导航栏(动态添加数据到list)
		
页面样式 <style> .scroll { position: fixed; right: 5%; top: 5em; background: #ccc; display: none; ...
 - vue组件导航栏动态添加class
 - 在开源UOJ的导航栏中添加新页面链接
		
前言 刚用开源UOJ搭建OJ成功时就想在导航栏那里添加一个站内页面链接,无奈当时乱搞水平低,网上也没有教程,不晓得怎么弄 今天突然来了闲情乱搞一通,结果还真乱搞成了...特意写下为后来人少走点弯路 前 ...
 - AngularJS:实现动态添加输入控件功能
		
功能要求如下:1. 点击加号可以增加输入框.2. 点击减号可以减少输入框.3. 当输入框只有一个的时候,不能再减少输入框.效果图如下:只有一个输入框有多个输入框 要实现这个功能,可以 ...
 - Django进入监听端口就自动打开指定页面,无需导航栏手动添加(Django六)
		
在我们进入监听端口时画面如下:而因为在urls.py中写过如下语句 我们在监听端口后加上/login就会跳转到login.html页面,如下图 那么如何一打开监听端口就可以走动跳转到login.htm ...
 - jq 动态添加.active 实现导航效果
		
代码思路: 页面4: 页面5: 代码思路: 通过jq获取你打开页面的链接 window.location.pathname: 在HTML中给自己的li加入一个ID id的命名与网址链接中的href相 ...
 - vuejs导航条动态切换active状态
		
用一个数组存导航条,用v-for循环它,这样可以减少代码,二可以使用它的下标来判断高亮,三还可以获取后端的导航信息来遍历 重点是在:routerLink(index, path)函数,传入当前点击的下 ...
 - AngularJS如何给动态添加的DOM中绑定事件
		
正常情况(即非动态插入 DOM 对象)下,ng-click 这样的指令之所以有效(即点击之后能调用注册在可见作用域里的方法),是因为 angular 在 compiling phase(编译阶段)将宿 ...
 
随机推荐
- Hadoop自学笔记(一)常见Hadoop相关项目一览
			
本自学笔记来自于Yutube上的视频Hadoop系列.网址: https://www.youtube.com/watch?v=-TaAVaAwZTs(当中一个) 以后不再赘述 自学笔记,难免有各类错误 ...
 - Bmob移动后端云服务平台--Android从零開始--(二)android高速入门
			
Bmob移动后端云服务平台--Android从零開始--(二)android高速入门 上一篇博文我们简介何为Bmob移动后端服务平台,以及其相关功能和优势. 本文将利用Bmob高速实现简单样例,进一步 ...
 - 站点搭建从零開始(二)server空间
			
前面介绍了域名相关知识.这里介绍server,也经常被叫做空间.也就是站点数据实际保存的地方. 1.整体介绍 依据国家相关规定,国内server空间须要进行备案.也就是到相关的机构进行登记.详细方法能 ...
 - vue  结合  echarts
			
http://blog.csdn.net/mr_wuch/article/details/70225364
 - css文字换行问题white-space:pre-line或者white-space:pre-wrap,解决word-wrap:break-word解决不了的
			
想让文字换行必须要写的那几个css样式就略过了.当一行文字是数字或字母时或者数字字母组合时会出现不换行局面,这时候加个word-wrap:break-word:就基本可以解决但是有种情况是它解决不了的 ...
 - Linux基础01
			
** 一些老生常谈的问题 一提起Linux,行业内无人不知<鸟哥私房菜>,就是放在胸口可以防弹的那种书,虽说经典.全面,但对于初学者而言,确实过于厚重,而且容易学着后边忘了前边,毕竟实际操 ...
 - Nodemailer 报错
			
{ [Error: connect ECONNREFUSED] code: ‘ECONNREFUSED’, errno: ‘ECONNREFUSED’, syscall: ‘connect’ } 如果 ...
 - Converting Legacy Chrome IPC To Mojo
			
Converting Legacy Chrome IPC To Mojo Looking for Mojo Documentation? Contents Overview Deciding What ...
 - CentOS7-1810 系统DNS服务器BIND软件配置说明
			
DNS的出现的历史 网络出现的早期是使用IP地址通讯的,那时就几台主机通讯.但是随着接入网络主机的增多,这种数字标识的地址非常不便于记忆,UNIX上就出现了建立一个叫做hosts的文件(Linux和W ...
 - NodeJS学习笔记 (9)网络服务-https(ok)
			
模块概览 这个模块的重要性,基本不用强调了.在网络安全问题日益严峻的今天,网站采用HTTPS是个必然的趋势. 在nodejs中,提供了 https 这个模块来完成 HTTPS 相关功能.从官方文档来看 ...