文件中的說明:
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去處理了!