Как я могу добиться этого с JQuery - PullRequest
0 голосов
/ 01 марта 2011

У меня сейчас есть это в моем документе

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

, который стилизует любые ссылки, имеющие расширение html и расширение pdf.Если URL-адрес имеет расширение, он отображает изображение перед ссылкой.Я хочу, чтобы стиль только для тех в неупорядоченном списке, который у меня есть, с классом "dlist".Как я могу это сделать?Я пытался добавить его до [href], но ничего не произошло.Проблема у меня в том, что он стилизует другие ссылки в статьях, а не только раздел загрузки, как мне нужно.

Ответы [ 4 ]

3 голосов
/ 01 марта 2011
$(document).ready(function(){
     $("ul.dlist a[href$='.html']").addClass('html');
     $("ul.dlist a[href$='.pdf']").addClass('pdf');
});

Вам понадобится пробел между ul.dlist и a[href$='.pdf'].

Пробел: descendant-selector [документы] .

Кроме того, вы заметите, что я добавил a перед селектором [href...]. Это будет более эффективным, поскольку не нужно будет анализировать все элементов, а только элементы a.

1 голос
/ 01 марта 2011
$(document).ready(function(){
   $("ul.dist [href$='.html']").addClass('html');
   $("ul.dist [href$='.pdf']").addClass('pdf');
});
0 голосов
/ 01 марта 2011

Добавление .dlist, кажется, работает для меня Рабочий пример jsfiddle

$(".dlist [href$='.html']").addClass('html');
$(".dlist [href$='.pdf']").addClass('pdf');
0 голосов
/ 01 марта 2011
$(document).ready(function(){
    $("ul.dlist a[href$='.html']").addClass('html');
    $("ul.dlist a[href$='.pdf']").addClass('pdf');
});
...