angular.element

DOM元素或者HTML字符串封装成一个jquery对象。不接收像jquery那样的使用选择器查找元素。

//将HTML字符串作为参数
angular.element('<div >整个DOM元素的内容</div>').html();
//将DOM元素作为参数,区别jquery的$('')返回的是一个对象
var a = document.getElementById('test'); alert(angular.element(a).html());

  如果页面引入了jquery类库,angular.element()就被等同于jquery中的$(”),如果jquery对象不存在,angular.element可以调用Angular中嵌入的精简版的jQuery library(名为: “jQuery lite” or “jqLite”),只能使用DOM元素或者HTML字符串作为参数。

在Angular应用中,所有元素的引用都是通过包装在jquery或者jqLite(指令中的complie函数和link函数的参数elem都是调用的对象,而不是原生的DOM元素)

  NOTE:angular.element不像jquery那样通过标签名或者选择器名查找元素。想要按照标签名查找元素,可以使用angular.element(document).find(…),或者使用$document.find(), 或者通过原生的JS查找元素的方法–document.getElementsByTagName()

Angular’s jqLite支持的方法—-用法可以参考jquery

addClass()–添加新样式到class中

after()

append()–追加DOM元素到末尾

attr()–添加或获取属性—不支持用函数做为参数

bind()–绑定事件—不支持命名空间,选择器,事件对象

children()–选择子元素—不支持选择器

clone()–克隆元素

contents()

css()–添加样式属性—只返回内联样式style=””, 不调用getComputedStyle(), 设置样式的时候,不能自动将数字转化成字符串或追加’px’, 也不能自动地添加属性前缀。

data()–绑定或获取数据

detach()–移除DOM元素

empty()

eq()

find()–只能获取元素的标签名

hasClass()

html()

next()—不支持选择器

off()—不支持命名空间,选择器,事件对象

one()—不支持命名空间,选择器

parent()—不支持选择器

prepend()

prop()

ready()

remove()

removeAttr()

removeClass()

removeData()

replaceWith()

text()

toggleClass()

triggerHandler()

unbind()

val()

wrap()

Related Posts

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注