相信大部份人都會把這2個的用法搞錯。仔細查看下API文件就可以知道。 eq回傳的是一個jquery物件,get回傳的是一個html 物件陣列。
舉例:
b9c90d7adf57a081f40cf3bc0da43c27 緋雨94b3e26ee717c64999d7867364b1b4a3使用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>