首先我们来看HTML代码:

<ul>
<li>百度</li>
<li>新浪</li>
<li>雅虎</li>
<li>腾讯</li>
</ul>

这是一段非常简单的html代码,其中包含了一个ul标签和多个li标签。

再来看一下javascript代码:

$("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来获得第一个li标签的color值:

$("li").get(0).style.color 
//因为get(num)返回的是个html对象,所以要使用传统的HTML对象方法,jq对象此时就没用了。

当然,你也可以get(num)后把对象转为jq的对象再进行操作:

$($("li").get(0)).css("color")

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

可以用eq的地方建议使用eq来取得jquery对象,可以有效减少代码量。