问题描述
如果我们只能使用 getComputedStyle
,那么你能告诉我为什么我们需要使用 getPropertyValue
方法吗?
Could you tell me why we need to use the getPropertyValue
method if we can use only the getComputedStyle
one?
例如,根据我的理解,这将有效:
For example, this will work, as far as I understand:
var s = getComputedStyle(element, null).opacity;
这相当于以下内容:
var s = getComputedStyle(element, null).getPropertyValue('opacity');
我们可以使用 getComputedStyle
而不用 getPropertyValue
?
Can we use getComputedStyle
without getPropertyValue
?
推荐答案
根据旧的, getPropertyValue
不是必需的:
According to the old DOM L2 Style, getPropertyValue
was not required:
但是,实现不需要支持它,所以使用 getPropertyValue
更安全。
However, implementations were not required to support it, so using getPropertyValue
was safer.
但根据较新的,使用没有 getPropertyValue
的camel-case必须工作:
But according to the newer CSSOM, using camel-case without getPropertyValue
must work:
partial interface CSSStyleDeclaration {
attribute DOMString _camel-cased attribute;
};
camel-cased属性
属性,在获取时,必须返回
调用,参数为运行算法为
驼峰属性。
设置属性必须调用
第一个参数是运行
的结果算法,作为给定值的第二个参数,没有第三个参数。必须重新抛出任何抛出的异常。
Setting the camel-cased attribute
attribute must invoke setProperty()
with the first argument being the result of running the IDL attribute to CSS property algorithm for camel-cased attribute, as second argument the given value, and no third argument. Any exceptions thrown must be re-thrown.
因此, getPropertyValue
为否检索CSS值所需的时间更长。
Therefore, getPropertyValue
is no longer necessary to retrieve CSS values.
这篇关于检索CSS需要'getPropertyValue'方法吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!