創建的數組我得到的div內的所有圖像。jquery inArray總是返回false,從jquery.get()
var favImages = $('#divPlacesILove img').get();
我檢查看tagImage元素是否在數組內。
這總是返回-1,當它不應該。
alert($.inArray($(tagImage).attr('src'), favImages));
創建的數組我得到的div內的所有圖像。jquery inArray總是返回false,從jquery.get()
var favImages = $('#divPlacesILove img').get();
我檢查看tagImage元素是否在數組內。
這總是返回-1,當它不應該。
alert($.inArray($(tagImage).attr('src'), favImages));
$('#divPlacesILove img').get()
此返回DOM元素的陣列。
$.inArray($(tagImage).attr('src'), favImages))
您正在尋找DOM元素數組中的字符串,因此它不會找到任何內容。
你爲什麼在這裏使用inArray
?如果你想看看jQuery對象包含一個元素的使用,.is
:
$('#divPlacesILove img').is(tagImage); // true
或者.filter
:
$('#divPlacesILove img').filter(function(){
return this === tagImage; // or $(this).prop('src') === $(tagImage).prop('src')
})
還有什麼數組是DOM元素,以及要HREF比較!
你可以試試這個,如果你堅持使用相同的功能集..
var favImages = $('#divPlacesILove img').get();
alert($.inArray($(tagImage)[0], favImages));
現在favImages
是圖像的數組,$(tagImage)[0]
是你taggeed圖像..
我認爲你的意思是'$(tagImage)[0]'。 'search'是一個字符串,而不是一個jQuery對象。 –
是啊對不起,錯過了! –
你可能期待爲.map()
:
var favImages = $('#divPlacesILove img').map(function() {
return this.src;
}).get();
現在favImages
將src
attr的陣列ibutes。
實際上你應該在'.map()'之後加上'.get()'來確保你得到一個真正的數組,而不是一個jQuery對象。 –
你是對的,謝謝。 – David
什麼是'tagImage'? –