Как с помощью jQuery найти элементы с определенным стилем (например, float: left), независимо от того, является ли это встроенным стилем или стилем, определенным в файле CSS?

Используя функция фильтра:
$('*').filter(function() {
return $(this).css('float') == 'left';
});
Замените "*" соответствующими селекторами для вашего случая.
Да, +1 хороший ответ, но для здравомыслия и скорости можно уменьшить поле поиска до чего-то меньшего, чем '*'
Вы должны использовать this.css.float вместо создания нового объекта jQuery для каждой итерации фильтра.
@Alnitak Вам нужно сделать его объектом, если вы хотите использовать jQuery .css(). Причина в том, что .css() не является функцией javascript, поэтому вам все равно нужно будет использовать $(this). Вы можете использовать $(this).css.float, но он не найдет left, потому что float не является индексом. Если вы хотите использовать строгий this, вы должны выбрать его по-другому с чем-то вроде this.attributes.style.nodeValue.search(/float:(\s)?left/i) != -1, учитывая тот факт, что другие свойства могут быть установлены «влево». Так что даже с накладными расходами $(this).css('float') - лучший вариант IMO.
Что ж, я не знаю, подхожу ли я к этому таким образом. Почему бы просто не переименовать эти элементы с согласованным идентификатором или именем класса и выбрать его?
Если это не вариант, это должно сработать:
this.getElementsByTagName('div').item(0).style.float = 'left';
Я думаю.
Так не пойдет. Ваш код выбирает все div, уменьшает выделение до первого div, а затем устанавливает его значение с плавающей запятой влево.
Это будет медленно. Вроде ДЕЙСТВИТЕЛЬНО медленно. Если вы знаете, что вам нужно выбрать все элементы с заданным стилем CSS, вы увидите гораздо лучшую производительность, применив одно дополнительное правило CSS к каждому элементу, а затем выбрав его по этому правилу.
Он будет НАМНОГО быстрее и удобнее для чтения.
CSS:
.float-left {float:left}
Javascript:
$('.float-left');
Я только что вернулся и перечитал этот вопрос еще раз, и теперь меня это немного смущает. Это определенно было бы лучшим решением. Не представляю, зачем мне нужно было выбирать такие элементы ...
Думаю, гораздо лучшее решение, чем мое.