2011-03-01 35 views
0

做到這一點我現在有這個在我的文檔我如何能與jQuery

$(document).ready(function(){ 
    $("[href$='.html']").addClass('html'); 
    $("[href$='.pdf']").addClass('pdf'); 
}); 

其風格,有一個HTML擴展和pdf擴展的任何鏈接英寸如果網址具有擴展名,它會在鏈接之前顯示圖片。我想讓它只適用於我有一個「dlist」類的無序列表中。我怎樣才能做到這一點?我試着在[href]之前添加它,但沒有發生任何事情。我遇到的問題是它正在爲文章中的其他鏈接造型,而不僅僅是我需要的下載部分。

回答

3
$(document).ready(function(){ 
    $("ul.dlist a[href$='.html']").addClass('html'); 
    $("ul.dlist a[href$='.pdf']").addClass('pdf'); 
}); 

你需要ul.dlista[href$='.pdf']之間的空間。

該空間是descendant-selector[docs]

此外,您會注意到我在[href...]選擇器之前添加了a。這將更有效率,因爲它不需要分析所有元素,而只需要分析a元素。

+1

...9秒工作?哎!有一天,我會學習:**答案**,然後**編輯**,這個問題! XD +1作爲第一,並與我自己有相同的答案(雖然後來進行了進一步的解釋編輯)。 =) – 2011-03-01 20:05:44

+0

@大衛:是的,我很久以前從偉大的人那裏瞭解到。 ; o) – user113716 2011-03-01 20:08:58

+0

啊,好吧:不過,在光明的一面,如果你再獲得三張選票並被接受,我認爲我至少有資格獲得某種徽章? =) – 2011-03-01 20:13:04

1
$(document).ready(function(){ 
    $("ul.dist [href$='.html']").addClass('html'); 
    $("ul.dist [href$='.pdf']").addClass('pdf'); 
}); 
0
$(document).ready(function(){ 
    $("ul.dlist a[href$='.html']").addClass('html'); 
    $("ul.dlist a[href$='.pdf']").addClass('pdf'); 
});