AngularJS改变元素显示状态
发布时间 - 2026-01-11 00:44:30 点击率:次前言

本文描述使用AngularJS提供的ng-show和ng-hide指令实现自动监听某布尔型变量来改变元素显示状态。
控制html元素显示和隐藏有n种方法:html的hidden、css的display、jQuery的hide()和show()、bootstrap的.hide。今天的重点不是显示和隐藏,而是监听某个布尔变量值,自动改变元素显示和隐藏状态。监听函数、if判断、选择dom、设置dom,5行代码搞不定吧,而且毫无技术含量。
实例1
<body>
<div ng-controller="VisibleController">
<p ng-show="visible">字符串1</p>
<p ng-hide="visible">字符串2</p>
<button ng-click="toggle()">切换</button>
</div>
<script src="../lib/angularjs/1.2.26/angular.min.js"></script>
<script>
function VisibleController($scope) {
$scope.visible = false;
$scope.toggle = function () {
$scope.visible = !$scope.visible;
}
}
</script>
</body>
两个指令很简单,只是ng-show在true时显示,false时隐藏,而ng-hide效果相反。
对于菜单、上下文敏感的工具以及很多其他情况来说,显示和隐藏元素是一项核心的功能。与Angualr中其他功能一样,Angular是通过修改数据模型的方式来驱动UI刷新,然后通过指令把变更反应到UI上。
ng-show和ng-hide这两条指令的功能是等价的,但是运行效果正好相反,我们都可以根据所传递的表达式来显示或隐藏元素。也就是说,ng-show在表达式为true时将会显示元素,为false时将会隐藏元素;而ng-hide则恰好相反。
工作原理
这两条指令的工作原理是:根据实际情况把元素的样式设置为display:block来显示元素;设置为display:none来隐藏元素。
实例2
<body ng-controller='ShowController'>
<button ng-click="toggleMenu()">Toggle Menu</button>
<ul ng-show='menuState.show'>
<li>Stun</li>
<li>Disintegrate</li>
<li>Erase from history</li>
</ul>
<script src="lib/angular/angular.js"></script>
<script>
var myApp=angular.module('myApp',[]) myApp.controller('ShowController',function($scope) {$scope.menuState={show: false},$scope.toggleMenu=function() {$scope.menuState.show=!$scope.menuState.show;}});
</script>
</body>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# angularjs改变元素显示状态
# angularjs元素显示状态
# angularjs元素显示
# AngularJS实现元素显示和隐藏的几个案例
# AngularJS中实现显示或隐藏动画效果的方式总结
# 谈谈AngularJs中的隐藏和显示
# AngularJS实现DOM元素的显示与隐藏功能
# 布尔
# 设置为
# 时将
# 工作原理
# 这两条
# 很简单
# 实际情况
# 种方法
# 可以根据
# 应到
# 也就是说
# 变量值
# 是一项
# src
# script
# lib
# lt
# body
# gt
# div
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何集成Inertia.js与Vue/React?(安装配置)
魔方云NAT建站如何实现端口转发?
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
使用spring连接及操作mongodb3.0实例
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
香港服务器部署网站为何提示未备案?
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程
再谈Python中的字符串与字符编码(推荐)
打造顶配客厅影院,这份100寸电视推荐名单请查收
javascript基于原型链的继承及call和apply函数用法分析
如何快速搭建支持数据库操作的智能建站平台?
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
Java遍历集合的三种方式
Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】
非常酷的网站设计制作软件,酷培ai教育官方网站?
Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
高防服务器:AI智能防御DDoS攻击与数据安全保障
如何在VPS电脑上快速搭建网站?
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
如何用PHP工具快速搭建高效网站?
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
百度浏览器网页无法复制文字怎么办 百度浏览器复制修复
如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环
Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
如何在腾讯云服务器快速搭建个人网站?
大学网站设计制作软件有哪些,如何将网站制作成自己app?
如何在云主机上快速搭建网站?
ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】
JS去除重复并统计数量的实现方法
edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】
手机网站制作与建设方案,手机网站如何建设?
潮流网站制作头像软件下载,适合母子的网名有哪些?
无锡营销型网站制作公司,无锡网选车牌流程?
如何在 Pandas 中基于一列条件计算另一列的分组均值
Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知
Laravel中的Facade(门面)到底是什么原理
英语简历制作免费网站推荐,如何将简历翻译成英文?
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
如何自定义建站之星模板颜色并下载新样式?
绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信
浅述节点的创建及常见功能的实现
如何在阿里云服务器自主搭建网站?
Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】

