我已经写了一个脚本来测试IMG标记中的SVG支持:
function SVGinIMG() {
var SVGdata = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzUiIGhlaWdodD0iMjc1Ij48L3N2Zz4%3D'
var i = document.createElement('img');
i.setAttribute('src',SVGdata);
return i.complete;
}
window.onload = function() {
var hasSVG = SVGinIMG();
alert(hasSVG);
}
这段代码实现了我想要的功能,但在使用 WebKit 浏览器运行脚本时,complete 属性无法在第一次加载页面时触发;只有在刷新页面后,它才能按照预期工作。由于 return 函数在图像加载完成之前就已经运行,那么最好的方法是延迟函数执行时间。