我想用jQuery或Javascript中的简单方法与返回的rgb颜色值进行比较。我尝试了所有我能想到的东西,但无法得到任何评价真实的东西。如何与JQuery RGB值进行比较?
if($('.Updated-Alert').css('color') == 'rgb(255,0,0)')
我发现了其他答案,通过RGB解析,但他们真的看起来像是我需要它的主要矫枉过正。
我想用jQuery或Javascript中的简单方法与返回的rgb颜色值进行比较。我尝试了所有我能想到的东西,但无法得到任何评价真实的东西。如何与JQuery RGB值进行比较?
if($('.Updated-Alert').css('color') == 'rgb(255,0,0)')
我发现了其他答案,通过RGB解析,但他们真的看起来像是我需要它的主要矫枉过正。
它只是返回一个字符串。您的比较失败,因为您的空白区域阻止了等值。
$('div').css('color') === 'rgb(0, 0, 255)'
如果你想强化它一点点,你可以修剪的空白,并比较认为:
$('div').css('color').replace(/\s+/g, '') === 'rgb(0,0,255)'
甚至修剪出任何东西,但数字:
$('div').css('color').replace(/\D+/g, '') === '00255'
'rgb(25,50,0)'trim =>'25500'; 'rgb(255,0,0)'trim =>'25500' – 2014-11-19 20:09:56
这在基本javascript中并不是一个简单的任务,考虑一个事实,即
white == #FFF == #FFFFFF == rgb(255,255,255) == rgba(255,255,255,0
这里是一个免费的图书馆,这是否: http://www.phpied.com/rgb-color-parser-in-javascript/
值后添加一个空格 - http://jsfiddle.net/c6874/
if ($("p").css("color") == 'rgb(255, 0, 0)') {
alert("It's red");
}
是什么'CSS( '颜色')'返回? – Ibu 2012-08-08 19:36:42
这取决于你正在使用的浏览器,当你比较没有空格的'rgb(255,0,0)'时,firefox 14.0.1会返回'rgb(255,0,0)'。 – Matthew 2012-08-08 19:37:05
该字符串可能包含空格(因为浏览器)。就像'rgb(12,34,56)'这对你的支票是错误的。 – 2012-08-08 19:37:21