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);
}