数组indexOf返回-1

时间:2015-06-03 16:38:52

标签: jquery arrays

刚开始学习jquery并将我自己的灯箱作为一个项目。我做了一个varable,它返回一个包含锚点数据标签的所有imgs的数组。现在我正在制作它,所以当你点击一个图像时,它会在数组中重新生成它的索引,这样我就可以切换图像了(不知道怎么做)但是索引返回-1?当我控制出阵列时,它会列出两个图像。

var ocularTags = $('body').find("[data-ocular]");
var ocularArray = $.makeArray(ocularTags);

//click binded to image
$('a[data-ocular]').click(function(event) {
    event.preventDefault();

    var $this = $(this);
    console.log( ocularArray.indexOf($this)); 

});

1 个答案:

答案 0 :(得分:3)

您正在对不起作用的对象使用indexOf。它将始终返回-1,因为objects未与primitivesstrings进行比较。

使用jQuery index()代替

console.log( ocularTags.index($this));