Tuesday, December 4, 2012

[jQuery] Get elements count in element

取得某個元素中的某物件數量


今天有人問我一個問題,他要取得一個span裡,某個span後所出現的img數量,感覺上不是個太複雜的問題,於是研究了一下就弄了範例出來,也順便貼上blog當作備忘。

先來看範例一,這邊按下去會跳出裡面有幾張圖(抱歉去背失敗XD)。
Google



範例一的原始碼長這樣,很簡單,主要就是用nextAll()跟size()這兩個function來取得所需資料而已。
<div class="outboard">
<span class="onepic" style="display: none;">這邊只有一張圖</span>
<img src="http://farm9.staticflickr.com/8348/8244069808_a04d8cd4f5_o.png" width="423" height="76" alt="Google">
</div>
<input type="button" value="按我" onclick="alert($('.onepic').nextAll('img').size()">


下面再多弄一個範例,反正是差不多的東西,只是裡面擺了六張圖,所以應該會alert 6 。


2 comments:

  1. 如果只需要上面的要求,那其實寫錯了

    只需要:
    $('.onepic img').length

    nextAll會取符合第一個selector的所有元素裡面的東西,所以要是.onepic不只一個,就會拿到不是你要的結果。

    ReplyDelete
  2. 感謝提醒,實際上會不只一個onepic 而只需取第一個內的值,所以用那個寫法是適用的,謝謝你 :)

    ReplyDelete