【发布时间】:2017-06-19 19:12:52
【问题描述】:
我有一个 Ionic 应用程序,它包装了一个使用 Angular 的特定网络应用程序。
那里,我有一些这样的按钮:
<ion-view view-title="Orders">
<ion-content scroll="true" overflow-scroll="true">
<div class="row">
<!-- some other divs with text only -->
</div>
<div class="row">
<div class="col-xs-12">
<button type="button" ng-click="vm.go('orders.new')"
class="button btn btn-lg btn-info">new order</button>
</div>
</div>
</ion-content>
</ion-view>
当我点击/触摸按钮时,有时不会调用方法vm.go()。在 Chrome(浏览器)和 Android 中,它始终可以正常工作。即使我通过 iOS 上的普通 safari 浏览器打开页面,一切正常。
所以,这似乎是 ionic 和/或 cordova 的问题。
如果我手动将事件处理程序(使用纯 JavaScript 使用 getElementById())附加到按钮以检测触摸或鼠标事件,它们会被触发,但 ng-click 不会。如果发生这种情况并且按钮的方法未正确触发,则视图将滚动/将视图设置到顶部。
对我来说,它看起来像是某种竞争条件,因此有时会出现正确的行为(调用 ng-click),有时则不然。
使用 Ionic 1.3.2 和 cordova 6.0.0
有人对此有任何想法吗?
【问题讨论】:
-
能否提供按钮的父元素?
-
是的 - 更新了我的问题!
标签: javascript ios angularjs cordova ionic-framework