jquery中eq和get

来源:互联网 发布:cydia无法安装软件 编辑:程序博客网 时间:2024/04/29 19:27

原文转自:http://blog.sina.com.cn/s/blog_7fb1495b0100vdoy.html

html代码:
<ul>
 

<li>Li-1</li>
 
<li>Li-2</li>
</ul>

$("document").ready(function(){
 
     alert($("li:eq(0)"));
 
     alert($("li").get(0));
 
  })

返回结果分别为:[object Object]和[object HTMLLIElement]
可知,eq返回的是一个jquery对象,get返回的是一个html 对象数组。

使用eq来获得第一个li标签的color值:
$("li").eq(0).css("color") 
 //因为eq(num)返回的是个jq对象,所以可以用jq的方法css
使用get来获得第一个p标签的color值:
$("li").get(0).style.color 
 //因为get(num)返回的是个html对象,所以要使用传统的HTML对象方法,jq对象此时就没用了。

当然,你也可以get(num)后把对象转为jq的对象再进行操作:
$($("p").get(0)).css("color")

由此我们知道,由eq返回的jquery对象,我们可以直接使用jquery的方法如.css(),.html()等,而由get返回的是html数组对象要使用传统的HTML对象方法或者转换成jquery对象后再操作。

既然如此都能实现,建议统一使用eq,不必再去费心理会他们之间的区别啦什么的 ^^

0 0