【问题标题】:how we get element width in decimal using jquery我们如何使用 jquery 以十进制形式获取元素宽度
【发布时间】:2015-05-23 16:13:15
【问题描述】:

我得到的是整数而不是分数的元素宽度,因为我的元素宽度是49.358 px。但我得到50px 使用

$('lichildren').width()

liChildren 是我的变量 请建议我解决此问题的任何替代方案。

【问题讨论】:

  • 当一个元素显示在屏幕上时,浏览器会将大小四舍五入到最接近的像素 - 因为监视器上的最小测量单位是像素。 50px大概就是元素显示时的宽度,所以变量是正确的

标签: jquery


【解决方案1】:

Reference Question 使用原生的Element.getBoundingClientRect 而不是元素的样式。它是在 IE4 中引入的,所有浏览器都支持:

$("#lichildren")[0].getBoundingClientRect().width

Demo

【讨论】:

    【解决方案2】:

    请参阅以下类似问题的答案:

    Getting the actual, floating-point width of an element

    接受的答案开头是:

    如果您已经拥有对 DOM 元素的引用,element.getBoundingClientRect 将为您提供所需的值。

    【讨论】:

      猜你喜欢
      • 2012-05-24
      • 2013-09-18
      • 2012-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多