我有以下代码。
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' is null or not an object。 rgb 值似乎确实符合 rgb.match。
有什么想法吗?
谢谢
最佳答案
在运行正则表达式之前尝试打印出 rgb 是什么。可能是输入不同。
我假设您正在检查 dom_element.style
属性。也许 IE 从一开始就不会将该属性转换为 rgb(r, g, b)
格式。
关于Javascript 匹配在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1997344/