angularjs - 使用范围滑块设置时间

时间:2016-04-12 08:18:34

标签: javascript angularjs ionic-framework

我尝试使用离子范围设定一段时间,步长为15分钟。 离子范围就像具有最小值,最大值,步长值的常见范围输入一样。

这里是范围html代码:

$ cppcheck --enable=all test.cpp 
  Checking test.cpp...
  [test.cpp:27]: (error) Memory pointed to by 'a' is freed twice.
  [test.cpp:33]: (error) Memory leak: c
  [test.cpp:30]: (error) Allocation with malloc, printf doesn't release it.
  [test.cpp:27]: (error) Deallocating a deallocated pointer: a

这就是我要求改变的功能:

<div class="item range">
  <input type="range" min="0.15" max="12" value="0" step="0.15" ng-model="TimeValue" ng-change="setTime(TimeValue)">
</div>

不幸的是,这不起作用。

我想要实现的是一个步长为0.15(分钟)的滑块,当它达到0.6时自动创建一个小时,然后再以1.15(小时)再次开始,依此类推。

我在这里回答了这个问题:using ionic range to set months and years但是这几年和几个月都是如此,而且计算方法不同。

这是一个快速演示:http://codepen.io/anon/pen/eZVPRv?editors=1010

修改

新演示:http://codepen.io/anon/pen/eZVPRv?editors=1010

1 个答案:

答案 0 :(得分:1)

使用以下代码伙伴,希望这是您所需要的 -

angular.module('ionicApp', ['ionic'])
.controller('MyCtrl', ['$scope', function($scope){    
  $scope.setTime = function (value) {
    $scope.hours = Math.floor(value / 0.6);
  if(($scope.TimeValue % 0.6) == 0 ){
    $scope.minutes = 0;
    }else{
      if($scope.TimeValue <= .6){
        $scope.minutes = Math.round((value - ($scope.hours))*100);  
      }else{
        value = Math.round((value - ($scope.hours * .6))*100);
        $scope.minutes = value;
      }
    }
  }
  $scope.TimeValue = 0.15;
}])

有计算问题,请在此查看 - http://codepen.io/himanshuapril1/pen/eZVPXe?editors=1010