我用jQuery創建了一個數組,我希望能夠檢查該數組並找到一個具有類.active
的條目並返回條目的索引。在一個類中搜索一個數組
我試過這個var index = $.inArray($(.active), array);
並沒有運氣。
這甚至可能,如果是這樣,怎麼樣?
(參見數組是什麼樣子的圖片。)
https://jsfiddle.net/e2ubdrbq/
我用jQuery創建了一個數組,我希望能夠檢查該數組並找到一個具有類.active
的條目並返回條目的索引。在一個類中搜索一個數組
我試過這個var index = $.inArray($(.active), array);
並沒有運氣。
這甚至可能,如果是這樣,怎麼樣?
(參見數組是什麼樣子的圖片。)
https://jsfiddle.net/e2ubdrbq/
已更新JSFiddle以包含我使用的解決方案。
https://jsfiddle.net/e2ubdrbq/1/
這是我們從創建數組的標記:
<div class="class"></div>
<div class="search"></div>
<div class="array"></div>
<div class="jquery"></div>
<div class="active"></div>
這是循環創建數組:
var array = [];
$('div').each(function() {
array.push($(this));
})
這是一個將返回功能具有該類別的元素的索引.active
:
function get_index(arr) {
var i;
$(arr).filter(function(index) {
if ($(this).hasClass('active')) {
i = index;
}
});
return i;
}
var index = get_index(array);
console.log(index);
感謝用戶AJDEV尋求幫助。
要查找元素:
array.filter('.active')
要查找指數和元素:
array.map((index, el) => {
return $(el).hasClass('active') ? {index, el} : null
})
請創建一個[最小,完整和可驗證的示例](https://stackoverflow.com/help/mcve) – Liam
如果您的數組位於變量arr中幷包含JQuery DOM節點,通過截圖,你可以像這樣過濾它'var entry = arr.filter(it => it [0] .hasClass('active'))[0]' – kharhys
冷靜,利亞姆。已經添加小提琴問題,現在測試出建議。 – KillahB