0
鑑於DOM元素的數組:如何檢查A標籤是否纏繞在IMG元素周圍?
var arr = $("a");
你如何檢查,在for循環內,標籤是否這是圍繞一個IMG元素包裝?
arr[i].has("img")
不工作,因爲它正在獲取數組元素。
鑑於DOM元素的數組:如何檢查A標籤是否纏繞在IMG元素周圍?
var arr = $("a");
你如何檢查,在for循環內,標籤是否這是圍繞一個IMG元素包裝?
arr[i].has("img")
不工作,因爲它正在獲取數組元素。
jQuery選擇返回其過載多個功能的陣列。只通過其中一個索引就會失去這些功能。要解決此問題,請執行以下操作:
$(arr[i]).has("img")
現在,這樣會產生一個具有jQuery功能但只包含您傳遞的項目的數組。
var arr = $('a');
for (var i=0;i<arr.length;i++) {
\t if ($(arr[i]).find('img').length>0) {
\t console.log('has img');
} else {
\t console.log('has no img');
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a>
<img/>
</a>
<a></a>
而'$'是否代表jQuery?如果是這樣,你錯過了一個標籤 – adeneo
噢 - >'arr.eq(i).has('img')'因爲你沒有一個數組,但是你可以避免使用一組元素 – adeneo
循環使用'$('a')。filter(':has(img)')' –