2016-08-04 190 views
0

我在使用jQuery獲取寬度爲<g></g>的元素時遇到了一些問題。使用.innerWidth()width()會返回空值。是否有可能使用jQuery獲得<g></g>寬度?如何獲得g元素的寬度?

我在問這個,因爲Chrome和IE之間的渲染差異。在鉻我簡單地使用:

var box = svg.node().getBBox(); 
var width = box.width; 

但在IE中不工作 - 它返回0

+0

jQuery的不支持svgs, svgs的行爲很難預測,特別是跨瀏覽器。也許尋找一個特定於svg的庫。 – user3154108

+1

也許[這個問題](http://stackoverflow.com/questions/11702952/how-to-get-the-width-of-an-svgg-element)可以提供幫助。 – HiDeo

回答

0

的widht增加號碼至元素也許工作

<svg viewBox="0 0 95 50" 
      xmlns="http://www.w3.org/2000/svg"> 
      <g stroke="green" fill="white" stroke-width="5" id="myGroup"> 
      <circle cx="25" cy="25" r="15"/> 
      <circle cx="40" cy="25" r="15"/> 
      <circle cx="55" cy="25" r="15"/> 
      <circle cx="70" cy="25" r="15"/> 
      </g> 
     </svg> 
     <script> 
     $(document).ready(function(){ 
      var height = document.getElementById("myGroup").getBBox().height; 
      var width = document.getElementById("myGroup").getBBox().width; 
      alert(" width "+width+" height "+height); 
     }); 
     </script>