【发布时间】:2021-08-29 14:02:44
【问题描述】:
我试图在我的 JavaScript 代码中获取 CSS 变量的值。我正在使用以下代码 sn-p 来实现这一点。在这种情况下,我得到了我在 CSS 中定义的某种红色阴影。
let red = getComputedStyle(document.documentElement).getPropertyValue('--red')
问题是这段代码只有在我将它包装在如下所示的setTimeout 块中时才有效,
setTimeout(() => {
let red = getComputedStyle(document.documentElement).getPropertyValue('--red')
}, 10)
所以 JavaScript 似乎需要等待一段时间才能完成加载 CSS。有没有一种方法可以获取 CSS 变量的值,而无需像上面显示的那样等待一段明确的时间?
我还发现,当我通过 VS Code Live Server 扩展运行我的应用程序时不需要 setTimout,但是当我通过文件资源管理器打开 HTML 文件时确实需要使用。
【问题讨论】:
-
这能回答你的问题吗? Is $(document).ready() also CSS ready?
标签: javascript css settimeout