我使用 jQuery 动态调整一些元素的大小。
在大多数情况下,它进展顺利,我调用$(selector).css('height');
以获取高度/宽度值或$(selector).height();
.
它通常会为我提供 中的值px
,即使我%
在样式表中设置了它。
但有时,它会返回 in 的值%
,所以我想知道,有没有办法确保获得 in 的值px
?如何“防止”格式?
我使用 jQuery 动态调整一些元素的大小。
在大多数情况下,它进展顺利,我调用$(selector).css('height');
以获取高度/宽度值或$(selector).height();
.
它通常会为我提供 中的值px
,即使我%
在样式表中设置了它。
但有时,它会返回 in 的值%
,所以我想知道,有没有办法确保获得 in 的值px
?如何“防止”格式?
编辑
我收回这一点 - 我不确定 jQuery 是否会返回一个 % 值,即使你在 CSS 中指定它 - 内联或其他(尽管我会保持我原来的答案不变)。
您能否提供一个示例,说明何时会返回 % 值?
原来的
.css()
将为您提供直接应用于元素的值:
<div style="height: 75%;">
.height()
get 是 DOM 本身中元素的高度 - 始终以像素为单位。
不要使用
$(selector).css('height');
获取像素值。它返回确定的 CSS,这可能是您收到返回的百分比值的原因。利用
$(selector).height();
专门用于像素值。
尝试
var a = $(window).height();
var b = $('#div').height();
百分比高度可以计算为:
(b / a)*100