2017-04-12 40 views
1

我已经使用了一个指令,它调用了一个方法,该方法返回一些完美工作的值。但我的问题是,它反复调用它,我想要的是它应该只在调整大小完成时调用方法。我把这个代码的形式只有在Angular Js中调整大小时才调用调整大小的方法

https://codepen.io/fabiobiondi/pen/pvJrBE

app.directive('resizable', function() { 
return { 
    restrict: 'A', 
    scope: { 
     callback: '&onResize' 
    }, 
    link: function postLink(scope, elem, attrs) { 
     elem.resizable(); 
     elem.on('resize', function (evt, ui) { 
      scope.$apply(function() { 
       if (scope.callback) { 
        scope.callback({ $evt: evt, $ui: ui }); 
       } 
      }) 
     }); 
    } 
}; 
}) 

<div resizable on-resize="resize($evt, $ui)" class="box"> 
    Resizable Div 
</div> 

注:我不能调用。点击()事件或使用的东西超时操作。其次,我有大约150个div可以调整大小,所以不能使用ID也。

在此先感谢

+0

你使用这个插件吗? => https://github.com/Reklino/angular-resizable –

回答

1

使用resize-stop事件。

elem.on('resizestop', function (evt, ui) { 
     scope.$apply(function() { 
      if (scope.callback) { 
       scope.callback({ $evt: evt, $ui: ui }); 
      } 
     }) 
    }); 
+0

谢谢你的回答 –