当前位置: 首页 > 面试题库 >

获取元素的实际浮点宽度

楚俊迈
2023-03-14
问题内容

我使用的是jQuery(v1.7.1),我需要获取元素的绝对浮点宽度,但是jQuery的所有width方法似乎都舍入了width的值。

例如,如果元素的实际宽度为20.333333px,则jQuery的width方法返回20,即忽略十进制值。

因此,我的问题是:如何获取元素宽度的浮点值?


问题答案:

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

方法自Internet Explorer 4起就存在,因此可以在任何地方安全使用。但是,widthand height属性仅在IE9
+中存在。如果支持IE8及以下版本,则必须计算它们:

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

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

getBoundingClientRectwindow.getComputedStyleChrome 28快70%,而Firefox的区别更大



 类似资料:
  • 本文向大家介绍js获取Html元素的实际宽度高度的方法,包括了js获取Html元素的实际宽度高度的方法的使用技巧和注意事项,需要的朋友参考一下 第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}。这中情况通过#div1.style.width拿不到宽度,而通过#div1.offsetWidth才可以获取到宽度。 第二种情况就是宽和高是写在行内中,比如style="wid

  • 本文向大家介绍js获取隐藏元素的宽高,包括了js获取隐藏元素的宽高的使用技巧和注意事项,需要的朋友参考一下 获取隐藏元素(display:none)的物理尺寸 问题及场景 假如我们有这样一个输入框,点击能展开选择。如下图: 在这里输入框和下方的展开区域是分离的,独立的两个控件!初始状态下面的可选框是隐藏的(ng-show=false) 展开区域中可折叠组件accordion(对应图中省份,排序字段

  • 本文向大家介绍js获取隐藏元素宽高的实现方法,包括了js获取隐藏元素宽高的实现方法的使用技巧和注意事项,需要的朋友参考一下 网上有一些js获取隐藏元素宽高的方法,但是可能会存在某些情况获取不了。 例如: test获取得了,但是test2_child是获取不到的。鉴于这种情况,于是自己写了一个方法解决。 解决思路: 1. 获取元素(拿宽高那个)所有隐藏的祖先元素直到body元素,包括自己。 2. 获

  • 问题内容: 假设我希望在浏览器的显示(视口)中居中。为此,我需要计算元素的宽度和高度。 我应该使用什么?请提供有关浏览器兼容性的信息。 问题答案: 您应该使用和属性。请注意,它们属于元素,而不属于。 执行CSS转换后,函数将元素的尺寸和位置作为浮点数返回。

  • 问题内容: 假设我希望在浏览器的显示(视口)中居中。为此,我需要计算元素的宽度和高度。 我应该使用什么?请提供有关浏览器兼容性的信息。 问题答案: 您应该使用和属性。请注意,它们属于元素,而不属于。 执行CSS转换后,函数将元素的尺寸和位置作为浮点数返回。

  • 本文向大家介绍JavaScript与JQUERY获取元素的宽、高和位置,包括了JavaScript与JQUERY获取元素的宽、高和位置的使用技巧和注意事项,需要的朋友参考一下 javascript中 ele.getBoundingClientRect():获取一个元素相对于浏览器视口的的坐标(无论父元素定位与否),返回一个Object对象,该对象有6个属性:top/left/right/botto