我想从 JavaScript 函数中确定元素的 viewBox(即 SVGSVGElement)。来电:
svgElement.getAttribute("viewBox")
当 viewBox 在元素上显式设置时效果很好。但我不能假设情况总是如此。例如,我希望我的函数适用于所有这些标签:
(400, 100) <svg width=400 height=100></svg>
(400, 100) <svg width="400px" height="100px"></svg>
(400, 100) <svg style="width: 400px; height: 100px"></svg>
(100, 25) <svg viewBox="0 0 100 25" style="width: 400px; height: 100px"></svg>
(100, 25) <svg viewBox="0 0 100 25" width=400 height=100></svg>
(括号中的值是函数在每种情况下应返回的值)。我希望能够在所有支持 SVG 的浏览器和所有缩放级别上执行此操作。
这是一个尝试(失败)的 JSFiddle:http: //jsfiddle.net/w4BTD/1/