按钮触摸事件,而滑动范围仅触发一次

时间:2015-04-10 17:35:06

标签: angularjs html5 ionic-framework ionic

对于离子框架应用程序,我想在我滑动范围并遇到麻烦时按下按钮。当范围滑块移动或正在被触摸时,触摸按钮将仅触发按钮事件一次。按钮的进一步触摸似乎会激活它(它在屏幕上按下),但它不会调用事件功能。事件处理没什么特别之处:按钮使用触摸功能来控制我的控制器中的功能,并使用ng-model绑定范围输入。

重现:

  • 滑动范围输入
  • 在仍然按住和/或滑动范围输入的同时,触摸按钮。按下第一个按钮时会调用buttonTouch()函数。之后,将不会调用buttonTouch(),并且按钮将显示为在屏幕上每次触摸时都被激活。

我不知道这可以在浏览器中测试,因为它需要同时触摸两个控件(我使用了Ionic View应用程序)。

示例:

HTML

<ion-content class="padding" ng-controller="RangeCtrl">
  <button type="button" class="button button-large" on-touch="buttonTouch()">
    <i class="icon ion-pinpoint"></i>
  </button>

  <div class="padding">
    <canvas width="100" height="100" style="background: {{flipColor}};">
    </canvas>
  </div>

  <div class="range range-positive">
    <input type="range" ng-model="level">
    <span class="padding-left">{{level}}</span>
  </div>
</ion-content>

控制器

.controller('RangeCtrl', function($scope) {
  $scope.flip = false;
  $scope.flipColor = 'green'
  $scope.level = "50";

  $scope.buttonTouch = function() {
    $scope.flip = !$scope.flip;  

    $scope.flipColor = $scope.flip ? 'blue' : 'green';
  }
})

0 个答案:

没有答案