如何从svg div获得js的宽度和高度

时间:2015-10-21 05:37:57

标签: javascript html svg

html中有一个div如下:

<svg id="box" width="312" height="101"></svg>

我想获得svg标签的宽度和高度:

var el = window.document.querySelector('#box');

但我无法通过el得到宽度和高度,我如何得到它们? 我使用node.js来运行脚本。整个代码是:

var jsdom = require('jsdom'),
content = '<svg id="box" width="300" height="120"></svg>';

jsdom.env({ features : { QuerySelector : true }, html : content,
      done : function(errors, window) {
      var w =  window.document.querySelector('#box').attr("width");
      console.log(w);
     }
});

2 个答案:

答案 0 :(得分:1)

var myelm = document.getElementById("box").getAttribute('width');

答案 1 :(得分:0)

使用getBoundingClientRect()well-supported

  

Element.getBoundingClientRect()方法返回一个的大小   元素及其相对于视口的位置。

var node = document.getElementById("yourElement");
var rect = node.getBoundingClientRect();

console.log("width:" + rect.width );
console.log("height:" + rect.height);