2017-04-12 6 views
1

私はディレクティブを使用しましたが、完全に機能するいくつかの値を返すメソッドを呼び出します。しかし、私の問題は、それが繰り返し呼び出すと私が欲しいのは、サイズ変更が完了したときにだけメソッドを呼び出す必要があるということです。私は、このコードの形をとったAngular Jsでサイズ変更が完了したときにのみResizeメソッドを呼び出します。サイズ変更可能

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> 

注:私は.click()イベントまたはタイムアウト操作を使って何かを呼び出す傾けます。第二に、私はIDを使用することはできませんので、サイズを変更することができます約150 divがあります。

ありがとうございます。

+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

あなたの答えをありがとう –

関連する問題