Heim > Fragen und Antworten > Hauptteil
文档中的说明:
angular.element(element)
我自己的调用:
angular.element("xx").addClass("xx")
根本没法执行,有大神给讲解一下吗?
http://jsfiddle.net/twn39/sy38y/1/
習慣沉默2017-05-15 16:52:05
angular.element 虽然很接近 jQuery,但是直接通过 HTML tag 去获取元素还是不行的,最简单的办法是这样:
angular.element(document.querySelector('p'));
http://jsfiddle.net/sy38y/2/
我想大声告诉你2017-05-15 16:52:05
看文档可以看到
angular.element() 参数要求是HTML string or DOMElement, 但是你写的是一个selector, 是不符合angular.element的参数要求的. 如果你想使用这种用法, 你需要添加jquery
淡淡烟草味2017-05-15 16:52:05
改成这样:
var par = document.getElementsByTagName('p')[0];
angular.element(par).addClass('blue');
迷茫2017-05-15 16:52:05
angular不建议直接操作DOM,所以如果你希望addclass,建议可以这么做(你的连接我无法打开,不知道你代码怎么写的,所以根据我自己的来吧)
HTML
<button ng-click="showActive()"></button>
<p ng-class="{'active':show===1}"></p>
js
$scope.showActive=function(){
$scope.show=1;
}
仅有的幸福2017-05-15 16:52:05
是的,本来还想着通过ng-click吧当前点击的按钮对象传过去,但最后发现好像angular不允许这样做。。。
只好还是用angular内置的jQlite去处理了!