博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Firefox SVG getBBox方法返回'NS_ERROR_FAILURE'错误分析
阅读量:7105 次
发布时间:2019-06-28

本文共 641 字,大约阅读时间需要 2 分钟。

  在SVG中,我们无法给Text元素设置Width和Height属性,因此无法直接获取Text元素的高和宽。如果想要给Text元素添加背景色,最简单的办法就是在Text元素的下面添加Rect,然后给Rect设置fill属性。如下面的代码:

2014-09-11

  显示效果 

  但是如果Text元素的字体改变了,如何修改Rect元素的Width和Height属性的值呢?一个简单的办法是通过Text元素的getBBox()方法获取高和宽,代码如下:

var textElement = d3.select("#dateObj_0");var bBox = textElement.getBBox();d3.select("#dateRectObj_0").attr("width", bBox.width).attr("height", bBox.height);

  有关d3.js的使用可以查看官网. getBBox()方法返回指定元素的最小边界,

  不过在Firefox浏览器上,该方法偶尔会返回'NS_ERROR_FAILURE'的错误。原因是当目标元素的display属性被设置为'none'时,Firefox认为此时无法获取到元素的边界值(元素没有在浏览器中渲染,因此返回值没有任何意义)。不过经测试IE和Chrome浏览器能正常工作。解决的办法不外乎是在调用该方法前先判断目标元素的display属性是否为'none'。

 

转载地址:http://waphl.baihongyu.com/

你可能感兴趣的文章
浅析react中间件机制
查看>>
layui--入门(helloWorld)
查看>>
浅谈C#网络编程(一)
查看>>
如何使用sqlserver 2012 空间查询(geometry及 geography)
查看>>
第十周作业
查看>>
10个有关String的面试问题
查看>>
就算神游 之四:富士山和富士游乐园 7
查看>>
Android system/app/与system/priv-app/的区别
查看>>
数论(Primer)
查看>>
图片在固定的宽高中不变形展示(访微信朋友圈图片展示)
查看>>
vc获取系统的图标(icon)
查看>>
【HDOJ】1867 A + B for you again
查看>>
学习笔记---springMVC搭建
查看>>
SOFA 源码分析 — 泛化调用
查看>>
面试问烂的 Spring AOP 原理、SpringMVC 过程(求求你别问了)
查看>>
Extern "C"
查看>>
可用的CSS文字两端对齐
查看>>
Could not get lock /var/lib/dpkg/lock更新问题
查看>>
caffe运行错误: im2col.cu:61] Check failed: error == cudaSuccess (8 vs. 0) invalid device function...
查看>>
人脸检测
查看>>