带有十进制值的IE 8宽度问题

时间:2015-07-08 06:26:00

标签: javascript jquery internet-explorer-8

我使用了两个div元素。我使用的以下结构。

<div id="firstelement" style="width:681px; height:401px">
      <div id="secondelement" style="width:50%;height:50%;"></div>
</div>

我需要获得IE8中第二个div的确切宽度(&#34; 340.5px&#34;)。如何使用JavaScript获取它?

尝试如下

$("#getWidth").click(function(){
  var ele = document.getElementById("secondelement");
    var box = ele.getBoundingClientRect();
    alert("Width = "+ box.right - box.left); // Integer value returned.
});

您能否提出解决此问题的建议?

1 个答案:

答案 0 :(得分:0)

试试这个:

var rect = $("#secondelement")[0].getBoundingClientRect();

var width;
if (rect.width) {
  // `width` is available for IE9+
  width = rect.width;
  alert(width)
} else {
  // Calculate width for IE8 and below
  width = rect.right - rect.left;
  alert(width)
}

DEMO: http://jsfiddle.net/ishandemon/7s6Lta50/