怎么获取svg里面的元素的宽度和高度?

程老师2088 2013-08-26 05:11:23
有这么段svg代码:
<g>
<text x="20.5" y="7.5" style="font-family:Verdana, sans-serif;font-size:11px;color:black;cursor:default;line-height:14px;fill:black;" r="0" zIndex="1" transform="rotate(-90 20.5 7.5)" text-anchor="end" visibility="inherit">
<tspan x="20.5">34</tspan>
</g>

我想获取到<text>或者<tspan>的宽度和高度,但是读出来的都是0px啊,在firebug下计算出来的确实是有高度和宽度的。。求教给位大神,这个要怎么处理哇。。。。
...全文
783 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fzfei2 2013-08-28
  • 打赏
  • 举报
回复
引用 3 楼 chengzhf 的回复:
查到了一个getComputedTextLength()的方法,但是这个方法对字符比较多的情况不太适用。。于是我想出了一个超级贱的方法:先把里面的内容设置为一个单字符,用getComputedTextLength()算出一个字符的宽度,然后算总字符的长度。。。贱啊。。。。
, #1方法,我在chrome,firefox 下都行,IE下出出是空也不会也 undefined,如果不兼容IE你再试试 offsetWidth offsetHeight
程老师2088 2013-08-28
  • 打赏
  • 举报
回复
查到了一个getComputedTextLength()的方法,但是这个方法对字符比较多的情况不太适用。。于是我想出了一个超级贱的方法:先把里面的内容设置为一个单字符,用getComputedTextLength()算出一个字符的宽度,然后算总字符的长度。。。贱啊。。。。
程老师2088 2013-08-26
  • 打赏
  • 举报
回复
引用 1 楼 fzfei2 的回复:
<tspan x="20.5" id="tspan1" >34</tspan> ,加个ID tspan1 js: var el=document.querySelector("#tspan1"); alert( el.offsetWidth ) alert( el.offsetHeight)
大神,不行啊,说是undefined...
fzfei2 2013-08-26
  • 打赏
  • 举报
回复
<tspan x="20.5" id="tspan1" >34</tspan> ,加个ID tspan1 js: var el=document.querySelector("#tspan1"); alert( el.offsetWidth ) alert( el.offsetHeight)

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧