CSSPrimitiveValue: getFloatValue() 方法

已弃用:此功能不再推荐。尽管某些浏览器可能仍然支持它,但它可能已从相关的 Web 标准中删除,可能正在被删除过程中,或者可能仅出于兼容性目的保留。避免使用它,如果可能,更新现有代码;请参阅此页面底部的兼容性表,以指导您的决策。请注意,此功能可能随时停止工作。

CSSPrimitiveValue 接口的 getFloatValue() 方法用于以指定的单位获取浮点数。如果此 CSS 值不包含浮点数或无法转换为指定的单位,则会引发 DOMException

注意:此方法是创建类型化 CSS 对象模型尝试的一部分。此尝试已被放弃,大多数浏览器并未实现它。

为了达到您的目的,您可以使用

语法

js
getFloatValue(unit)

参数

unit

一个unsigned short,表示应以该单位类型返回值的代码。有效值是

常量 描述
CSS_CM 该值为 <length>,以厘米为单位。
CSS_DEG 该值为 <angle>,以度为单位。
CSS_DIMENSION 该值为 <number>,具有未知维度。
CSS_EMS 该值为 <length>,以 em 为单位。
CSS_EXS 该值为 <length>,以 ex 为单位。
CSS_GRAD 该值为 <angle>,以 grad 为单位。
CSS_HZ 该值为 <frequency>,以赫兹为单位。可以使用 getFloatValue 方法获取该值。
CSS_IN 该值为 <length>,以英寸为单位。
CSS_KHZ 该值为 <frequency>,以千赫兹为单位。
CSS_MM 该值为 <length>,以毫米为单位。
CSS_MS 该值为 <time>,以毫秒为单位。
CSS_NUMBER 该值为简单的 <number>
CSS_PC 该值为 <length>,以皮卡为单位。
CSS_PERCENTAGE 该值为 <percentage>
CSS_PT 该值为 <length>,以磅为单位。
CSS_PX 该值为 <length>,以像素为单位。
CSS_RAD 该值为 <angle>,以弧度为单位。
CSS_S 该值为 <time>,以秒为单位。

返回值

以指定单位表示的float 值。

异常

类型 描述
DOMException 如果 CSS 值不包含浮点数,或者如果无法将浮点数转换为指定的单位,则会引发INVALID_ACCESS_ERR

示例

js
const cs = window.getComputedStyle(document.body);
const cssValue = cs.getPropertyCSSValue("margin-top");
console.log(cssValue.getFloatValue(CSSPrimitiveValue.CSS_CM));

规范

此功能最初在DOM Style Level 2 规范中定义,但自那以后已从任何标准化工作中删除。

它已被现代的但与之不兼容的 CSS 类型化对象模型 API 取代,该 API 目前正在标准化轨道上。

浏览器兼容性

BCD 表仅在浏览器中加载