Javascript 匹配在 IE 中不起作用

标签 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' 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/

相关文章:

javascript - 如何避免 html5 Canvas 上的永久粒子痕迹?

javascript - HTML 中的下标文本

html - 为什么 IE 不显示这个请求的背景图片?

PHP:使用 preg_match() 匹配奇怪的破折号

php - 约会的 Preg_match

javascript - 如何将 Controller 链接到 AngularJS 中的指令?

javascript - 1 秒后删除所有类 纯 Javascript

javascript - 如何在 IE11 上禁用文本区域中的自动更正而不禁用拼写检查?

Javascript:将字符串视为数组在本地工作但不在 IE 中部署

php - PHP 中数学方程的正则表达式