2017-10-05 37 views
-1

我用jQuery創建了一個數組,我希望能夠檢查該數組並找到一個具有類.active的條目並返回條目的索引。在一個類中搜索一個數組

我試過這個var index = $.inArray($(.active), array);並沒有運氣。

這甚至可能,如果是這樣,怎麼樣?

(參見數組是什麼樣子的圖片。)

https://jsfiddle.net/e2ubdrbq/

My array

+1

請創建一個[最小,完整和可驗證的示例](https://stackoverflow.com/help/mcve) – Liam

+0

如果您的數組位於變量arr中幷包含JQuery DOM節點,通過截圖,你可以像這樣過濾它'var entry = arr.filter(it => it [0] .hasClass('active'))[0]' – kharhys

+0

冷靜,利亞姆。已經添加小提琴問題,現在測試出建議。 – KillahB

回答

0

已更新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尋求幫助。

0

要查找元素:

array.filter('.active') 

要查找指數和元素:

array.map((index, el) => { 
    return $(el).hasClass('active') ? {index, el} : null 
}) 
相關問題