如何在 AngularJS 中动态增加/减少段落元素的高度
How do you increase/reduce the height of a paragraph element dynamically in AngularJS?
当我单击"显示更多"按钮时,我需要增加 p 元素的高度,然后应该显示"显示更少",然后在我再次单击按钮时减小 p 元素的大小。在 Angular 中执行此操作的最佳方法是什么?
这是我的段落和按钮的结构——
<p ng-bind="MyController.notes"></p>
<button class="button show-button" ng-click="MyController.showMore()">Show More</button>
模板
<div ng-init="more = false">
<p ng-class="{'showMore': more, 'showLess': !more}">
bla bla bla.
</p>
<button ng-click="more = !more">{{more ? 'Show Less' : 'Show More'}}</button>
</div>
.CSS
.showMore { height: auto; }
.showLess { max-height: 100px; overflow: hidden }
我会使用ng-class指令。(此处的文档:https://docs.angularjs.org/api/ng/directive/ngClass)
所以这就像切换一个名为"showMore"的类,你需要在p元素中绑定它
。<p ng-class="showMore">Stuff here</p>
<button ng-click="showMoreClick">{{ showMore ? 'Show Less' : 'Show More'}}</button>
在css中,只需使用showMore应用您想要的样式即可。 ng 类使用表达式工作,因此 showMore 要么是真的,要么是假的。在控制器中,您希望将单击按钮绑定到切换变量 show更多...像这样:
$scope.showMore(false) // initializing showMore to false (minimized first)
$scope.showMoreClick = function () {
$scope.showMore(!$scope.showMore()); // toggle showMore
};
相关文章:
- jQuery/Javascript在内容可编辑的当前段落后插入元素
- MDN文档中关于弄清楚XUL元素的段落是什么意思:“如何将覆盖扩展转换为无重启”
- 如何在jQuery中从段落中删除不需要的元素
- Rangy和IE8-在段落末尾的元素后面放置插入符号
- 获取元素中的段落文本
- ckeditor更改生成了段落元素的输出
- 如何在 AngularJS 中动态增加/减少段落元素的高度
- Browzer在脚本中添加段落元素
- 内部文本不适用于段落和标题 HTML 元素
- 根据元素高度拆分段落的最有效方法
- 从段落元素中切片第一个字符,替换内容并添加类
- 如何使用 jQuery 将段落的原始文本格式放入 HTML 段落元素中
- 使用 Jquery 将子字符串替换为段落中的 html 元素,而不会弄乱出现的事件
- 如何从段落元素中获取姓氏
- 如何使用regex将段落元素替换为新行
- 如果段落元素为空,则使它们的CSS不同
- 关于将javascript中的数组插入HTML中的段落元素的基本帮助
- AngularJS:段落元素的换行符
- 如何将一个HTML段落元素的文本值传递给另一个HTML段落元素
- 在HTML/JavaScript中,如何动态设置页眉/段落元素's的文本而不覆盖其他内容