AngularJS 进阶 (十)AngularJS 改变元素显示状态
一、前言
本文描述使用 AngularJS 提供的 ng-show 和 ng-hide 指令实现自动监听某布尔型变量来改变元素显示状态。
控制 html 元素显示和隐藏有 n 种方法:html 的 hidden、css 的 display、jquery 的 hide()和 show()、bootstrap 的.hide。今天的重点不是显示和隐藏,而是监听某个布尔变量值,自动改变元素显示和隐藏状态。监听函数、if 判断、选择 dom、设置 dom,5 行代码搞不定吧,而且毫无技术含量。
二、实例
复制代码
两个指令很简单,只是ng-show
在 true 时显示,false 时隐藏,而ng-hide
效果相反。
对于菜单、上下文敏感的工具以及很多其他情况来说,显示和隐藏元素是一项核心的功能。与 Angualr 中其他功能一样,Angular 是通过修改数据模型的方式来驱动 UI 刷新,然后通过指令把变更反应到 UI 上。
ng-show
和ng-hide
这两条指令的功能是等价的,但是运行效果正好相反,我们都可以根据所传递的表达式来显示或隐藏元素。也就是说,ng-show
在表达式为 true 时将会显示元素,为 false 时将会隐藏元素;而 ng-hide 则恰好相反。
三、工作原理
这两条指令的工作原理是:根据实际情况把元素的样式设置为display:block
来显示元素;设置为display:none
来隐藏元素。
复制代码
版权声明: 本文为 InfoQ 作者【No Silver Bullet】的原创文章。
原文链接:【http://xie.infoq.cn/article/514c020d8ad03edf2ea39e3a4】。文章转载请联系作者。
评论