AngularJS动态切换样式

AngularJS相比原生的js或者jquery有着很大不同,对于一个简单的鼠标点击不同选项,动态切换样式该怎么实现呢。

本文实现的是点击某个标题,标题字体加粗,并随之切换相应的div内容,如下(点击推荐或热点)

 

 

Ok.,实现过程

1. html代码

<!--推荐或热点标题-->
        <div class="comTitStyle">
            <div>
                <a ng-click="titleClick(0)" ng-class="{'selected':focusIndex==0}" class="selected">推荐</a>
            </div>
            <div>
                <a ng-click="titleClick(1)" ng-class="{'selected':focusIndex==1}">热点</a>
            </div>
        </div>

2. 控制器代码

.controller('newsCtrl', function($scope) {
                    //定义要聚焦的索引
                    $scope.focusIndex=0; //默认显示推荐板块

                    $scope.recHide = false;
                    $scope.hotHide = true;

                    $scope.titleClick = function(index){
                        $scope.focusIndex=index; //点击切换样式

                        if(index == 0){
                            $scope.recHide = false;
                            $scope.hotHide = true;
                        }else if(index == 1){
                            $scope.recHide = true;
                            $scope.hotHide = false;
                        }
            }
        })


3. 附上包括.selected在内的CSS样式

.comTitStyle{
    width: 16rem;
    height: 2rem;
}
.comTitStyle > div{
    display: inline-block;
    width: 7.9rem;
    height: 2rem;
    vertical-align: middle;
    text-align: center;
    line-height: 2rem;
}
.comTitStyle > div > a{
    width: 2.5rem;
    height: 1.9rem;
    display: inline-block;
    vertical-align: middle;
    font-size: .8rem;
    color: #666666;

}
.comTitStyle > div > .selected{
    border-bottom: 1px solid #3BB4C1;
    font-weight: bold;
}

4. 好了,在浏览器运行试试,放心,没错的!


  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过添加/删除 CSS 类来切换样式,并使用 ngClass 指令绑定到相应的按钮。 首先,在 HTML 中定义按钮: ```html <button ng-click="activeTab = 'tab1'" [ngClass]="{'active': activeTab === 'tab1'}">Tab 1</button> <button ng-click="activeTab = 'tab2'" [ngClass]="{'active': activeTab === 'tab2'}">Tab 2</button> <button ng-click="activeTab = 'tab3'" [ngClass]="{'active': activeTab === 'tab3'}">Tab 3</button> ``` 在上面的代码中,我们使用了 ngClass 指令来根据条件添加/删除 CSS 类。activeTab 是一个作用域变量,用于跟踪当前选定的选项卡。 接下来,定义 CSS 样式: ```css button { border: none; background-color: #ddd; color: #333; padding: 10px; margin-right: 10px; cursor: pointer; } button.active { background-color: #333; color: #fff; } ``` 这里定义了两个样式,一个是常规按钮样式,一个是选定按钮时的样式。当按钮被点击时,ngClass 指令会根据条件添加或删除 active 类,从而切换样式。 需要注意的是,ngClass 指令接受一个对象作为其值,该对象的属性名是 CSS 类名,属性值是一个布尔值,表示是否应该应用该类。在上面的代码中,我们使用了一个三元运算符来确定 active 类是否应该应用于按钮。 另外,如果您需要更多的动态样式,您也可以使用 ngStyle 指令,它接受一个对象作为其值,该对象的属性名是 CSS 属性名,属性值是一个表达式,表示该属性的值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值