【问题标题】:disable swipe in ionic slidebox禁用在离子滑动框中滑动
【发布时间】:2014-07-30 12:43:05
【问题描述】:

在 ionic 中,我们有 slideBox。我想禁用滑动。我希望它在按钮单击时滑动。我该怎么做?

我已经在我的控制器中尝试了$ionicSlideBoxDelegate.enableSlide(false),但它不起作用。

根据此链接http://forum.ionicframework.com/t/ionicslideboxdelegate-disable-all-swiping/6391 我必须在滑动框的范围内禁用但如何访问元素的范围并应用它?

【问题讨论】:

    标签: angularjs ionic-framework


    【解决方案1】:

    合适的地方是ng-init

    <ion-slide-box ng-init="lockSlide()">
    

    并在您的控制器中具有相应的功能

    .controller('sliders', function($scope, $ionicSlideBoxDelegate) {
        $scope.lockSlide = function () {
            $ionicSlideBoxDelegate.enableSlide( false );
        }
    }
    

    【讨论】:

      【解决方案2】:

      在你的 html 文件中放入 active-slide="slidestop($index)"

      <ion-slide-box active-slide="slidestop($index)">
      </ion-slide-box>
      

      并且在控制器类中具有“slidestop”功能

      $scope.slidestop = function(index) {
          $ionicSlideBoxDelegate.enableSlide(false);
      }
      

      【讨论】:

      • 我目前正在使用离子框架。我也遇到了与滑动框相同的问题,这个想法确实适用于我的应用程序,@kash 感谢分享.....
      • 但它也显示错误错误:[$compile:nonassign] 与指令'ionSlideBox'一起使用的表达式'slidestop($index)'是不可分配的!
      • 它实际上可以工作@MohammadFaizanKhan,但错误仍然存​​在。您是否设法修复了错误?
      【解决方案3】:

      您的问题可能是需要先渲染滑动框,然后才能禁用滑动。所以在你的控制器中,使用超时:

      $timeout(function(){
          $ionicSlideBoxDelegate.enableSlide(0);
      },0);
      

      【讨论】:

        【解决方案4】:

        在你的html中添加

        <ion-slide-box active-slide="slidestop" does-continue="false">
        

        然后在你的控制器中添加

        $timeout(function(){
        $ionicSlideBoxDelegate.enableSlide(false);
        },0);
        

        【讨论】:

        • 这个$timeout 完成了这项工作。谢谢! :-)
        猜你喜欢
        • 2014-06-17
        • 1970-01-01
        • 1970-01-01
        • 2014-05-29
        • 1970-01-01
        • 2015-07-24
        • 2017-06-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多