欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

jquery index 都是0

錢諍諍1年前9瀏覽0評論

最近在使用jQuery的時候遇到了一個詭異的問題,就是調用index()方法時返回的結果都是0。

// HTML代碼
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
// jQuery代碼
var lis = $('ul li');
console.log(lis.index()); // 0
console.log(lis.eq(1).index()); // 0
console.log(lis.eq(2).index()); // 0

這讓我比較困惑,因為我傳入的參數不是應該返回對應元素在集合中的序列號嗎?

于是我上網搜索了解決方案,發現index()方法還有一個可選參數,可以傳入一個選擇器或者DOM元素作為參考點。

// HTML代碼
<div class="container">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</div>
// jQuery代碼
var lis = $('ul li');
console.log(lis.index()); // 0
console.log(lis.eq(1).index()); // 0
console.log(lis.eq(2).index()); // 0
console.log(lis.index($('.container li'))); // 0 1 2

這里我將$('.container li')作為參考點,這樣就能正確地返回每個元素在參考點中的序列號了。

總結一下,當你使用index()方法時,如果你想獲取的是元素在整個文檔中的序列號,就不用傳入任何參數,但如果你想獲取的是元素在某個選擇器或者DOM元素內的序列號,就需要傳入相應的參考點了。