2012-08-02 75 views

回答

3

你必須使用.filter[docs]

$('img').filter(function() { 
    return this.src === $(this).attr('rel'); 
}); 

注意rel不是img元素的有效屬性。因此,您可能需要使用data-* attributes來存儲附加信息。

附加說明this.src將返回絕對 URL,即使src屬性包含相對URL。如果你想獲得屬性的實際值,你必須使用$(this).attr('src')

+0

我已經在使用'data-original'了,rel只是爲了簡化這篇文章。像魅力一樣工作,謝謝!甚至不知道'.filter'的存在,所以我想我仍然有很多東西要學習:) – 2012-08-02 09:44:34

+0

很高興我可以幫助:)如果你有一些時間,只需瀏覽jQuery文檔(http:// api.jquery.com/),你可能會發現很棒的東西;) – 2012-08-02 09:48:39

1

這裏是做這件事的一種方法:

<img src="../images/images/map_ico.png" rel="../images/images/map_ico.png" alt="logo" /> 
<img src="../images/images/map_ico.png" alt="logo" /> 
<img src="../images/images/map_ico.png" rel="../images/images/map_ico.png" alt="logo" /> 



var imgs=[]; 
$('img').each(function(){ 
    if($(this).attr('src')==$(this).attr('rel')){ 
     imgs.push($(this)) 
    } 
}) 
//would return 2 
alert(imgs.length); 

的IMGS陣列現在認爲具有相同的src和alt屬性中的所有圖像標記。