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

时间:2013-12-09 13:44:14

标签: angularjs angularjs-directive angular-ui

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

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

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

   var directiveObject= {

   restrict:'AC',

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

我尝试做

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

2 个答案:

答案 0 :(得分:46)

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

这样的东西
element.addClass('myDraggable');
$compile(element)(scope);

问候

答案 1 :(得分:9)

您可以使用angular.element功能。它与jquery元素$(element)

基本相同

只是做:

angular.element(element).addClass('myDraggable');