我有一堆 class = "change"的跨度,每个跨度都有一个唯一的 id。我使用以下方法创建了这些跨度的数组:
var changesArray = $('.change').toArray()
我希望当我单击它时能够获取数组中跨度的索引。我尝试过:
$('.change').click(function(){
var thisChange = $(this).attr('id');
var thisChangeIndex = $.inArray(thisChange,changesArray);
});
但是我每次点击 .change 时得到的只是 -1。
我对这种类型的代码有点新手。帮忙?
最佳答案
toArray
方法说
Retrieve all the elements contained in the jQuery set, as an array.
您正在数组中寻找特定的 id
- 这永远不会起作用。
如果您想要项目的索引,可以使用.index()
$('.change').click(function(){
var thisChangeIndex = $('.change').index(this);
console.log(thisChangeIndex);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<span class="change">change1</span>
<span class="change">change2</span>
<span class="change">change3</span>
<span class="change">change4</span>
</div>
<div>
<span class="change">change5</span>
<span class="change">change6</span>
<span class="change">change7</span>
<span class="change">change8</span>
</div>
关于javascript - 在 JS/JQuery 中查找 toArray 创建的数组中元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38100865/