angular.element() 参数要求是HTML string or DOMElement,
angular.element 虽然很接近 jQuery,但是直接通过 HTML tag 去获取元素还是不行的,最简单的办法是这样:
angular.element(document.querySelector('p'));
angular.element(document.querySelector('#id1'));
angular.element(document.querySelector('.class'));
注:querySelector() 方法仅仅返回匹配指定选择器的第一个元素。如果你需要返回所有的元素,请使用 querySelectorAll() 方法替代。
Angular's jqLite
jqlite只提供以下的jQuery方法:
addClass()
after()
append()
-
attr()
- 不支持函数作为参数 -
bind()
- 不支持命名空间,选择器或事件数据 -
children()
- 不支持选择器 clone()
contents()
-
css()
-只有将内联样式,不叫getcomputedstyle() data()
detach()
empty()
eq()
-
find()
- 通过标签名称限定查找 hasClass()
html()
-
next()
- 不支持选择器 -
on()
- 不支持命名空间,选择器或事件数据 -
off()
- 不支持命名空间或选择器 -
one()
- 不支持命名空间或选择器 -
parent()
- 不支持选择器 prepend()
prop()
ready()
remove()
removeAttr()
removeClass()
removeData()
replaceWith()
text()
toggleClass()
-
triggerHandler()
- 通过一个虚拟事件对象来处理。 -
unbind()
- 不支持命名空间 val()
wrap()
注:如何使用原生的方法
link:function(scope,elm,attr){ var oH = elm.css('height'); console.log(elm[0].offsetHeight); }