web-dev-qa-db-ja.com

element.AddClassを使用してangular jsディレクティブを追加します。これは「クラス」として機能するように制限されています

angular jsでディレクティブをクラスとして機能するように制限し、このディレクティブで要素をドラッグ可能にしました。

マウスホバーでaddClassを実行し、クラスであると思われるこのディレクティブを追加したいのですが、これは望ましい結果を与えません、何かが足りませんか?以下は私がやっていることです

module.directive('myDraggable', function ($document) {

   var directiveObject= {

   restrict:'AC',

//logic of dragging
}
return directiveObject;
});

しようとする

 element.addClass('myDraggable'); // but this fails! pls help
20
Rishul Matta

Angularは、実行時に新しいディレクティブがアタッチされている場合、要素を監視していません。動作させるには、クラスを追加した後に要素を再コンパイルする必要があります $ compile

何かのようなもの

element.addClass('myDraggable');
$compile(element)(scope);

よろしく

46
kfis

angular.element 関数を使用できます。基本的にjquery要素の$(element)と同じです

ただやる:

angular.element(element).addClass('myDraggable');
9
Graham T