Jquery 形成具有特定样式值的包装元素集

Jquery 形成具有特定样式值的包装元素集,jquery,Jquery,我有一页代码,我想翻阅并更改所有不透明度

我有一页代码,我想翻阅并更改所有不透明度<1的.box div的背景色为透明,但我看不到一种优雅的方式来实现这一点

似乎没有像属性选择器那样的样式选择器:

                            $(‘element[attribute<value’])
$('element[属性使用jQuery的函数:

var boxes = $(".box").filter(function(){
   return $(this).css("opacity") != 1;
});
JS Fiddle:

使用jQuery的函数:

var boxes = $(".box").filter(function(){
   return $(this).css("opacity") != 1;
});
JS Fiddle:

您可以使用jQuery的函数查看每个匹配的元素

文档中的一个示例:

$( "li" ).each(function( index ) {
  console.log( index + ": " + $( this ).text() );
});

因此,您可以执行以下操作:

$( ".box" ).each(function( index ) {
  if( $(this).css('opacity') < 1 )
    // do your stuff here
});
$(“.box”)。每个(函数(索引){
if($(this.css('opacity')<1)
//在这里做你的事
});
您可以使用jQuery的功能查看每个匹配的元素

文档中的一个示例:

$( "li" ).each(function( index ) {
  console.log( index + ": " + $( this ).text() );
});

因此,您可以执行以下操作:

$( ".box" ).each(function( index ) {
  if( $(this).css('opacity') < 1 )
    // do your stuff here
});
$(“.box”)。每个(函数(索引){
if($(this.css('opacity')<1)
//在这里做你的事
});
使用
.filter()
将jQuery对象缩减为与所需条件匹配的元素:

$('.box').filter(function() {
    return $(this).css('opacity')<1;
}).someMethod();
$('.box').filter(函数(){
返回$(this).css('opacity')使用
.filter()
将jQuery对象减少到与所需条件匹配的元素:

$('.box').filter(function() {
    return $(this).css('opacity')<1;
}).someMethod();
$('.box').filter(函数(){

return$(this.css('opacity')我认为最好的解决方案可能是使用过滤器

$('.box').filter(function() {
    return $(this).css('opacity') < 1;
}).css("opacity", 0);
$('.box').filter(函数(){
返回$(this.css('opacity')<1;
}).css(“不透明度”,0);
例如:

文件:

但您也可以像其他人建议的那样使用循环……或者,如果您已经可以识别这些非不透明框,您可以为它们提供一个类或数据属性

下面是一个包含4种不同解决方案的示例:
有人应该知道哪个最快。

我认为最好的解决方案可能是使用过滤器

$('.box').filter(function() {
    return $(this).css('opacity') < 1;
}).css("opacity", 0);
$('.box').filter(函数(){
返回$(this.css('opacity')<1;
}).css(“不透明度”,0);
例如:

文件:

但您也可以像其他人建议的那样使用循环……或者,如果您已经可以识别这些非不透明框,您可以为它们提供一个类或数据属性

下面是一个包含4种不同解决方案的示例:
有人应该知道哪个最快。

“所有的#box divs”应该只有一个ID为“box”的div。ID必须是唯一的。“box”是类名吗?你可以试试
$('.box').css('background-color',function(){if($(this.css('opacity')<1){return blue';})
如果您仍然想使用dup id,请将您的id转换为类,然后
$('[id=“box”])
不,我不想要重复的id。我应该使用类。我编辑了这个问题。“all#box divs”应该只有一个id为“box”的div。id必须是唯一的。“box”是类名吗?您可以尝试
$('.box')。css('background-color',function(){if($(this.css('opacity')<1){return'blue';}}})
如果你还想使用dup id,就把id转换成类,然后
$('[id=“box”]')
不,我不想要重复的id。我应该使用类。我编辑了这个问题。他说“我可以做类似的事情”我认为这只是一个输入错误..而你没有回答问题..他说“我可以做一些类似的事情”我认为这只是一个输入错误..而你没有回答问题..这些都是很好的解决方案!谢谢!我选择这一个是因为我使用了每一个()一直以来我都很熟悉它。我自己应该把它看作一个解决方案。这些都是很好的解决方案!谢谢!我选择这一个是因为我一直在使用每个()所以我很熟悉它。我自己应该把它看作一个解决方案。