相信大部份人都會把這2個的用法搞錯。仔細查看下API文件就可以知道。 eq回傳的是一個jquery物件,get回傳的是一個html 物件陣列。
舉例:
緋雨
使用eq來獲得第一個p標籤的color值:
$( "p").eq(0).css("color") //因為eq(num)回傳的是jq對象,所以可以用jq的方法css使用get來取得第一個p標籤的color值:
$("p").get(0).style.color //因為get(num)傳回的是html對象,所以要使用傳統的HTML物件方法,jq物件此時就沒用了。當然,你也可以get(num)後面把物件轉為jq的物件再進行操作:
$($("p").get(0)).css("color")----- -------------------------------------------------- -------------------
more eq
see:
http://api.jquery.com/eq/
--- -------------------------------------------------- ---------------------
more get:
see:
http://api.jquery.com/get/
eq:返回是一個jquery物件作用是將匹配的元素集合縮減為一個元素。這個元素在匹配元素集合中的位置變成0,而集合長度變成1
get:是一個html 物件陣列作用是取得其中一個符合的元素。 num表示取得第幾個符合的元素。
如:html程式碼
程式碼如下:
<ul>
<li>li-1</li>
<li>li-2</li>
</ul>
登入後複製
例如我們透過jquery選擇器$("li")那麼我們將會有兩個li元素我如何只想選擇其中一個呢?
$("li:eq(0)").html() 或$("li").eq(0).html() 就是第一個li 這裡我們將得到li-1
$("li:eq(1)").html() 或$("li").eq(1).html() 就是第二個li這裡我們將得到li-2
下面我們來看看get因為get回傳是html物件所以我們這裡
$("li").get(0).style.color='red'
只有這樣用或將get回傳物件轉換成jquery物件在操作
$($("li").get(0)).css("color",'red')即可
完整程式碼
程式碼如下:
<
HEAD
>
New
Document
<ul>
<li>li-1</li>
<li>li-2</li>
</ul>