2010-06-11 24 views

回答

35
var arraysOfIds = $('#particularDivId img').map(function(){ 
         return this.id; 
        }).get(); 

// arraysOfIds has now all the id's, access it as arraysOfIds[0], arraysOfIds[1].... 
+2

啊,很酷。我用.map()功能學到了一些新東西。儘管如此,看看文檔,爲什麼最後需要.get()調用。我只是沒有它就試過你的代碼,它工作正常。想要學習的新手。 – 2010-06-11 08:19:17

+0

如果可以的話,我會給這個+10,很好的訣竅。 – raffian 2013-03-22 01:39:05

10

粗略的估計,但嘗試:

var imgIds = new Array(); 

$("div#divID img").each(function(){ 
    imgIds.push($(this).attr('id')); 
}); 

您還沒有給出div的名字,但我用divId作爲div的ID。只需改變它以滿足您的需求。

+0

你或許應該使用數組,而不是字符串DIV #myDiv的 'IMG' 的元素。 – icktoofay 2010-06-11 08:07:05

+0

你好。 是的,犯了一個錯誤,只是修復它。衛生署!對我來說太早了。 – 2010-06-11 08:07:59

9

使用兒童選擇器。所以,你說我希望所有的孩子

$("#myDiv > img").css("border", "3px double red"); 

http://api.jquery.com/child-selector/

+0

我想這個工作,當我更換$('img')。doStuff();與$(「#contents> img」)。doStuff();它不再做東西。我也試過單引號和div#內容。 – Muskie 2013-05-29 18:31:50

+0

我的解決方案是使用派生選擇器而不是子項。 [鏈接](http://api.jquery.com/descendant-selector/) – Muskie 2013-05-29 18:54:38

+0

這不會選擇一個div的所有子img元素,而只是直接的後代。 – 2017-07-06 08:21:46

3
function textOnly() { 
      jQuery('#dvContent img').each(function() { 
       jQuery(this).css('display', 'none'); 
      }); 
     } 
相關問題