【问题标题】:.height() returns height in percent, how to get it in pixels.height() 以百分比返回高度,如何以像素为单位
【发布时间】:2015-04-02 04:06:35
【问题描述】:

我有一个元素,我想确定它的高度和宽度,以便正确填充它,但是当我使用时

$('#element').height();
$('#element').width();

它以百分比形式返回值。我一直在寻找解决方案,但是在我的搜索中出现的所有问题都暗示 jQuery 默认返回像素,因此不解释如何让它这样做。

【问题讨论】:

  • 此页面表明,如果父项被隐藏,则该值可能不准确。我从没想过“可能不准确”意味着返回百分比而不是像素。

标签: javascript jquery height width


【解决方案1】:

返回的究竟是什么?您可能会看到小数值 (.75) 而不是整数。来自.height() documentation

在某些情况下,与维度相关的 API(包括 .height())返回的数字可能是小数。代码不应假定它是整数。此外,当用户缩放页面时,尺寸可能不正确;浏览器不会公开 API 来检测这种情况。

【讨论】:

  • 返回 CSS 中设置的确切百分比。隐藏父级时这是正常的吗?
  • 你是如何隐藏父母的; display: nonevisibility: hidden?
  • 在没有看过您的代码的情况下,我建议您在父级上强制布局,以便获得子级的准确高度和宽度。 Stack Overflow 上有几种解决方案。 stackoverflow.com/questions/9117738/…stackoverflow.com/questions/9117738/…
  • 谢谢,我找到了解决方案,我只是在获取值之前显示父级,然后再次隐藏。
【解决方案2】:

我相信你一定是误会了。你能提供一个 jQuery 返回 .width 或 .height 百分比值的演示吗?

【讨论】:

  • 谢谢!在我尝试为您制作一个示例时,我发现问题是我在隐藏其父级时找到了高度和宽度。在显示 div 时执行此操作会产生正确的结果。
猜你喜欢
  • 1970-01-01
  • 2013-06-22
  • 2013-03-05
  • 2013-08-01
  • 2015-06-12
  • 2011-11-17
  • 1970-01-01
  • 2014-04-20
  • 2014-12-10
相关资源
最近更新 更多