5

jQueryで.one()関数が達成するものをAngularJSに実装するディレクティブまたは方法はありますか?

つまり、一度だけ実行される要素にイベントを関連付けます。

4

1 に答える 1

11

必要な要素に ng-click を配線し、コントローラーの ng-click 関数に、ng-click が次のようなものを実行しない状態に切り替える変数を用意します。

var firedOnce = false;
scope.myClickFunction = function(){
    if(firedOnce){ return; }
    //other code
    firedOnce = true;
}

ディレクティブを接続してそれを行うこともできます。

edit : ディレクティブメソッドの Jsfiddle: http://jsfiddle.net/4hDb3/

于 2013-07-03T15:39:22.670 に答える