我在我的javascript(coffeescript)文件中使用以下代码:
myVar = document.querySelector('SVG > a:nth-child(2) > text').offsetWidth
在谷歌浏览器中,它返回一个文本元素的宽度,该元素嵌套在一个嵌套在svg元素内的(锚)元素内,如预期的那样。在Firefox中,它返回NULL。我认为也许我的选择器语法不符合Mozilla的标准所以我也玩过它,但即使我可以正确选择DOM元素(由控制台输出)我也无法检索任何属性offsetWidth;它总会以未定义的方式回归。
现在,如果它很重要,我的SVG对象会被一些Javascript动态地注入我的页面。它直接放在div的正文中,并用<svg>
和</svg>
标记括起来。
是什么给出的?如何确定这些元素的宽度?
谢谢!