AngularJS:(ng-)隐藏元素但不隐藏其子元素

标签 angularjs

如何创建一个类似于 ng-show 的指令来隐藏元素而不是子元素?

我在想url变量是否存在 Angular 模板

<a ng-show-link="url" ng-href="{{url}}">
  <img ng-src="picture.png" />
</a>

打印出来

<a href="/url">
  <img src="picture.png" />
</a>

,如果 url 不存在

<img src="picture.png" />

。与 ng-repeat 一起使用时将有助于删除额外的容器元素。

最佳答案

我认为拥有 <img> 会更容易标签,然后编写一条指令,用 <a> 包裹它。标记是否存在 url。添加/包装比删除现有标签更干净。

尽管您认为有一点冗余,但您也可以在没有指令的情况下执行此操作:

<a ng-show="url" ng-href="{{url}}"><img src="picture.png" /></a>
<img ng-hide="url" src="picture.png" />

关于AngularJS:(ng-)隐藏元素但不隐藏其子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15770330/

相关文章:

javascript - 如何将 Rails 变量传递给 AngularJS 配置

javascript - 当我尝试丑化文件时找不到 Angular

javascript - 从 websocket 服务器推送消息后更新 $scope 变量

html - 为什么没有 data-* 元素?

javascript - 如何从 Controller 函数内部获取 $scope?

angularjs - Angular .js :9827 POST http://localhost:64340/Content 405 (Method Not Allowed)

javascript - Angular .js : Two-Way data binding across multiple controllers

javascript - Angular js中的默认值从服务器中选择

angularjs - 在 Protractor 中拉动 ng-repeat 数组

javascript - 为什么我无法获取 $sceProvider?