如何获得Raphael javascript库的纸质画布的宽度,该库是用相对值定义的?

kar*_*tos 1 javascript size canvas width raphael

我正在玩Raphael SVG库,我定义了一个持有Raphael画布的元素

<div id="canvas_container"></div>
Run Code Online (Sandbox Code Playgroud)

我把拉斐尔帆布/纸放在里面:

paper = new Raphael(document.getElementById('canvas_container'), '100%', '100%');
Run Code Online (Sandbox Code Playgroud)

现在我想获得画布的绝对宽度/高度.我想出了如何使用paper.canvas访问画布,但如果我尝试获取paper.canvas.width,我得到一个SVGAnimatedLength元素而不是宽度.

我注意到当使用Chrome开发工具并使用鼠标在控制台中选择paper.canvas时,所选元素在窗口中显示正确的绝对大小(当Chrome开发人员选择某个元素时,页面中出现蓝色选项安慰).但是如何在代码中获取它?

amu*_*ill 6

您可以使用对象的offsetWidthoffsetHeightcanvas来确定Raphael画布的真实尺寸.

示例:http://jsfiddle.net/g54PR/1/