【问题标题】:Stop nested ripple effect停止嵌套的涟漪效应
【发布时间】:2015-11-19 08:36:44
【问题描述】:

我正在使用 Angular Materia 0.10.1。

我有一个 md-button 嵌套在 md-list-item 中。两个元素在点击时都会触发涟漪效果,当我点击按钮时,会同时在两个元素上触发涟漪效果。我希望在按钮或列表元素上产生涟漪,但不要同时出现。

<md-list flex>
    <md-list-item ng-click="a('a')">
      <p>Some name</p>
      <md-button class="md-accent md-raised" ng-click="b('b', $event)">Do something</md-button>
    </md-list-item>
 </md-list>

我使用过$event.stopPropagation(),但它并没有像停止嵌套点击事件那样停止涟漪。

This Plunker 可以更好地展示它。

【问题讨论】:

  • @swordf1zh 这不是一回事,因为我说的不是点击事件,而是涟漪效应。正如我在问题$event.stopPropagation() 中所说,不会像停止嵌套点击事件一样停止涟漪效应。

标签: angularjs angular-material


【解决方案1】:

这似乎是 md-primary 类中内置的东西,以及它如何与列表项一起使用。如果您查看示例,则有一些带有侧按钮的示例没有表现出这种行为

只需将按钮上的类交换为md-secondary,它似乎就可以解决您的问题(尽管现在样式是一个单独的问题)

 <md-button class="md-secondary md-raised" ng-click="b('b')">Do something</md-button>

http://plnkr.co/edit/4fo8u190gpKyoHznVbFM?p=preview

或者,该示例使用md-icon 代替按钮,这似乎也有效。

【讨论】:

  • 我听取了您的建议,并在 md-icon 的示例中做了类似的事情。在md-list-item 中使用md-button 似乎不太正确,因为它不能像应有的那样轻松工作。 md-secondary 也会导致问题,所以我相信md-icon 是正确的方法。
  • @BrunoFinger 很高兴我能帮上忙。
猜你喜欢
  • 2016-04-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多