【www.bbyears.com--浏览器】
String.prototype.split方法的参数支持字符串也支持正则,而在IE6~8(可能更低的IE版本也会有错误,这我就不去测试了)用split切出的数组和遵循W3C标准的浏览器所得到的结果是不一样的
脚本:
代码如下"a:b:c".split(/(:)/)
Firefox输出:
["a",":","b",":","c"]
IE7/8(含IE9兼容的模式)输出:
a,b,c
IE9 中文本框中出现了 n时 会把他保留 需要去掉 而IE7/8(含IE9兼容的模式) 中并无出现
比如
12 12
12 12
12 12n12 12 这是IE9 中 而IE7/8(含IE9兼容的模式)是12 1212 12
总结出一个兼容
代码如下var rgb2Array = function () {
var test = (" a b c ").split(/s/),
isWrong = test.length === 3;
return isWrong ? function (str) {
return str.split(/D+/);
} : function (str) {
var ret = str.split(/D+/);
ret.shift();
ret.pop();
return ret;
};
}();