如何可靠地询问SVG元素在主页上占用的大小(以像素为单位)?
svg.offsetWidth和svg.getBoundingClientRect().width工作在Chrome V34.这个问题的动机是为这个答案获得可靠的实现,这需要知道元素外部的宽高比.此外,对于这个问题,我需要知道SVG的实际大小,或者至少在不同的调用和调整大小元素之间返回比例值的东西.
我以前一直在那条路上.不幸的是,大多数获取<svg>元素大小的函数都在Firefox中出错.我找到的唯一可行解决方案是使用window.getComputedStyle(svgElement).width(或height),需要对其进行解析(并且仅在svgElement.display =='block'时才有效,这在您的示例中).我已经采用你的小提琴在Firefox中工作:http://jsfiddle.net/dL5pZ/5/
更新:显示'内联'的问题在不久前在Firefox 29中得到修复.
更新2:如另一个答案所述,getBoundingClientRect现在也应该工作.
| 归档时间: |
|
| 查看次数: |
1453 次 |
| 最近记录: |