Javascript匹配不';我不在IE工作

Javascript匹配不';我不在IE工作,javascript,internet-explorer,preg-match,Javascript,Internet Explorer,Preg Match,我有以下代码 function rgb2hex(rgb) { rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/); return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]); } 在FF和Chrome中似乎工作正常。IE提供的“1”为空或不是对象。rgb值似乎与rgb.match匹配 有什么想法吗 Thx在运行正则表达式之前,请尝试打印出rgb是什么。可能是输入不同 我假设您正在检查dom\u元

我有以下代码

function rgb2hex(rgb) {
rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]);
}
在FF和Chrome中似乎工作正常。IE提供的“1”为空或不是对象。rgb值似乎与rgb.match匹配

有什么想法吗


Thx

在运行正则表达式之前,请尝试打印出rgb是什么。可能是输入不同


我假设您正在检查
dom\u元素.style
属性。也许IE从一开始就不会将该属性转换为rgb(r,g,b)格式。

传递此函数的值看起来像“rgb(12,34,56)”?我传递rgb颜色,并尝试将其转换为hexI添加了一个警报()在匹配之前,它确实有一个十六进制颜色值,所以看起来还可以。是的,你是正确的,它已经被转换为FF和Chorme没有的地方。谢谢