以下需要删除先前从url('
在DOM中的元素对象上返回的.css('background-image')
部分字符串,这在Firefox中非常有效,但在Chrome中无效。
// example value of artworkURL: url('http://somewebsite/picture.jpg')
artworkURL = artworkURL.replace(/url\(\'/g,'');
我发现这是因为Chrome从''
删除url('picture.jpg')
但是,从正则表达式中删除\'
会导致Firefox中断,因为Firefox将''
替换为{ {1}}但仍然理解正则表达式。即使删除CSS中的括号也会导致Firefox重新呈现""
。
如何让两种浏览器及其各种合规性保持愉快?
答案 0 :(得分:2)
尝试:
artworkURL = artworkURL.replace(/url\(['"]?/g,'');
这将删除'
(如果它存在),甚至考虑可能使用"
的浏览器。可以使用类似的正则表达式来删除结尾:
artworkURL = artworkURL.replace(/['"]?)/g,'');