Создание новых селекторов довольно забавно, поэтому я сделал это:
Использование:
: hasCssAttr (свойство, значение ...)
Property
- это свойство css, которое вы хотите использовать для сравнения
value
- это значения, с которыми вы хотите сопоставить (у вас может быть более одного)
$(':hasCssAttr(float, left)').css('float', 'right');
Источник Луки:
$.expr[':'].hasCssAttr = function(objNode, intStackIndex, arrProperties, arrNodeStack) {
var arrArguments = arrProperties[3].split(',');
var cssPropVal = $(objNode).css(arrArguments[0]); // need for speed
for (var i = 1 ; i < arrArguments.length ; i++)
if (cssPropVal == arrArguments[ i ].replace(/^\s+|\s+$/g,""))
return true;
return false;
}
По сути, это выбирает любое свойство ol 'css. Я полагаю, вы могли бы устранить цикл, если бы вы хотели только одно значение, вроде ненужного. Кроме того, мне интересно, было бы интереснее сделать это в eval, чтобы вы могли проводить численные сравнения. Тем не мение. Вот оно
Попросите Бена помочь мне.