使用element.AddClass添加一个角度js指令,该指令仅限于充当"类"

Ris*_*tta 20 angularjs angular-ui angularjs-directive

我在角度js中做了一个指令,限制它作为一个类,这个指令使我的元素可以拖动.

在mousehover上我想做addClass并添加这个应该是类的指令,但这并没有给出想要的结果,我错过了什么?以下是我正在做的事情

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

   var directiveObject= {

   restrict:'AC',

//logic of dragging
}
return directiveObject;
});
Run Code Online (Sandbox Code Playgroud)

我试着去做

 element.addClass('myDraggable'); // but this fails! pls help
Run Code Online (Sandbox Code Playgroud)

kfi*_*fis 47

我想,如果Angular在运行时附加了一个新的指令,它就不会观察元素.为了使它工作,你应该在使用$ compile添加类之后重新编译元素 .

就像是

element.addClass('myDraggable');
$compile(element)(scope);
Run Code Online (Sandbox Code Playgroud)

问候


Gra*_*m T 9

您可以使用angular.element函数.它与jquery元素$(元素)基本相同

做就是了:

angular.element(element).addClass('myDraggable');
Run Code Online (Sandbox Code Playgroud)