Выделение всех элементов с помощью png background-image - PullRequest
4 голосов
/ 12 февраля 2010

Как я могу выбрать в jQuery все div с background-image: url(somepath/somename.png) в своем стиле?

Ответы [ 3 ]

4 голосов
/ 12 февраля 2010

Попробуйте добавить пользовательский селектор:

$(document).ready(function() { 
    $.extend($.expr[':'], { 
        hasMyImage: function(el) { 
            return ($(el).css('background-image') == "Url('somepath/somename.png')");
        } 
    }); 
}); 

Затем выберите:

$("div:hasMyImage");
3 голосов
/ 12 февраля 2010

Селектор jQuery отсутствует, но это может сработать:

$('div').each( function() {
    if ( $(this).css('background-image') == 'url("image.png")' ) {
        // do something here
    }
});

Однако более эффективным методом было бы убедиться, что у вас есть только один класс, использующий это фоновое изображение, а затем простовыберите $('.bgClass')

1 голос
/ 12 февраля 2010

Используйте функцию filter :

var matches = $("div").filter(function() 
{      
    return ($(this).css("background-image") == "url('somepath/somename.png')");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...