Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery.filter使用的是.css(显示),而不是.css(背景色)_Javascript_Jquery_Html_Css_Colors - Fatal编程技术网

Javascript jQuery.filter使用的是.css(显示),而不是.css(背景色)

Javascript jQuery.filter使用的是.css(显示),而不是.css(背景色),javascript,jquery,html,css,colors,Javascript,Jquery,Html,Css,Colors,我有一个问题.filter与.css“display”一起使用,而不是.css“background-color” 以下是不起作用的代码,即高亮显示的.length=0: 有效的代码,即高亮显示的.length>0: 说明: 在keydown上,我的代码选择文本值等于keydown事件键代码的class.list单元的元素,然后将其背景颜色更改为蓝色。然后,代码过滤所有背景色为蓝色的.list单元元素,并将该值返回到突出显示的变量 然而,当记录到控制台时,突出显示的变量给出长度=0。但是如果我没

我有一个问题.filter与.css“display”一起使用,而不是.css“background-color”

以下是不起作用的代码,即高亮显示的.length=0:

有效的代码,即高亮显示的.length>0:

说明:

在keydown上,我的代码选择文本值等于keydown事件键代码的class.list单元的元素,然后将其背景颜色更改为蓝色。然后,代码过滤所有背景色为蓝色的.list单元元素,并将该值返回到突出显示的变量

然而,当记录到控制台时,突出显示的变量给出长度=0。但是如果我没有选择背景色,而是选择显示,即用.css'display'、'x'替换所有.css'background-color'、'x',则突出显示的变量包含正确的长度

我尝试用backgroundColor替换背景色,并使用rgbx,x,x代替蓝色,但没有效果。

解决方案:

var highlighted = $listUnit.filter(function(){ 
  return  $(this).css('background-color') == 'rgb(0,0,255)';
});
而不是:

var highlighted = $listUnit.filter(function(){
  return  $(this).css('background-color') == 'blue';
});

即使HTML显示style=background-color:blue,我也必须使用$this.css'background-color'==rgb0,0255来正确选择blue。

你得到的结果是什么,然后你可以使用console.log$this.css'background-color';我想这会帮助我们回答你的问题。$this.css'background-color'='blue'。这也反映在网站上-选定的div的背景颜色变为蓝色。它也反映在HTML中,它显示了内联样式更改为background color=blue。
var highlighted = $listUnit.filter(function(){ 
  return  $(this).css('background-color') == 'rgb(0,0,255)';
});
var highlighted = $listUnit.filter(function(){
  return  $(this).css('background-color') == 'blue';
});