Javascript 如何使用jquery检测css值?

Javascript 如何使用jquery检测css值?,javascript,jquery,Javascript,Jquery,假设在我的样式表中: .test{width: 20px; height: 50px; color: blue;} .some-test{padding: 20px; margin: 10px;} .even-test{font-size: 20px; color: red;} 是否可以检测每个css属性的20px值,以便替换它 我假设检测到这样的东西: $('.selector').filter(function() { return $(this).css(property) =

假设在我的样式表中:

.test{width: 20px; height: 50px; color: blue;}
.some-test{padding: 20px; margin: 10px;}
.even-test{font-size: 20px; color: red;}
是否可以检测每个css属性的
20px
值,以便替换它


我假设检测到这样的东西:

$('.selector').filter(function() {
    return $(this).css(property) === '20px';
}).css(property, value);


是否有类似的东西:
style.arguments[]

您可以使用jQuery中的筛选函数来查找具有该宽度的所有元素

$('.allYourSelectors').filter(function() {
    return $(this).css('width') === '20px';
}).css("width", newWidth);

但是,最好只给它们提供您可以修改的相同类。

要搜索CSS样式(不确定是否得到style=“…”样式):


-谷歌是你的朋友。这适用于给定此类的元素。但是,您只能在元素被给定此类后检测它。您不能使用jQuery@Mr.iC您正在指定属性,而他希望根据属性的value@Mr.Alien这是真的,一定有更简单的方法。有趣的问题..这只是宽度问题,但我想检测每个属性的值。@C-link然后您必须像上面那样执行多个语句。执行
这个.style.width
并避免在jQuery中包装元素的开销不是更好吗?
var parseStyle = function(rules) {
    for (var i = 0; i < rules.length; ++i)
    {
        console.log(rules[i].style.width);
    }
};

//care needs to be taken as to when this executes - styles may not have been loaded yet
for (var i = 0; i < document.styleSheets.length; ++i)
    if (document.styleSheets[i].rules && document.styleSheets[i].rules.length > 0)
        parseStyle(document.styleSheets[i].rules);
var element = ... jquery or whatever
var elementStyle = element.currentStyle || getComputedStyle(element);
console.log(elementStyle.width);