Как выбрать все элементы с установленным семейством шрифтов, примененных к ним? - PullRequest
5 голосов
/ 15 июня 2010

Мне нужен способ, чтобы jQuery возвращал все элементы, имеющие семейство шрифтов css

: AvantGardeITCbyBT-Bold, sans-serif;

, примененное к ним.

Я думаю, что единственный способ сделать это - перебрать все элементы и проверить, применяется ли этот CSS к нему.Кажется, медленный способ сделать это?

Есть ли способ сделать это через селектор jQuery?

1 Ответ

3 голосов
/ 15 июня 2010

хорошо, вы можете расширить селекторы jQuery с помощью

$(document).ready(function(){
   $.extend($.expr[':'], {
     AvantGardel: function(elem){
        var $e = $(elem);
        return( typeof $e.css('font-family') !== 'undefined' && $e.css('font-family') === 'AvantGardeITCbyBT-Bold' );
     },
     SansSerif: function(elem){
       var $e = $(elem);
        return( typeof $e.css('font-family') !== 'undefined' && $e.css('font-family') === 'sans-serif' );
     }
 });    
});

, а затем позвоните

$(':AvantGardel').hide();

или

$(':SansSerif').hide();

например.

рабочий пример: http://jsbin.com/idova3/edit

...