首页 > 解决方案 > 如何使用 JavaScript 获取尚不存在的元素的样式?

问题描述

所以,我想获取topa 的计算样式<div>并将其放入变量中。但是,这<div>还没有在 DOM 中。稍后将通过 JavaScript 事件将其附加到 DOM(一旦用户触发.onclick()事件)。

为此,我尝试了这个: let style = getComputedStyle(element).top;

但是,这行不通,因为element它还没有在 DOM 中。如果我尝试这样做,则会出现以下错误:

错误

top那么,即使该元素不在 DOM 中,我如何才能获取特定元素的样式呢?

标签: javascripthtmlcssdomstyles

解决方案


你不能。您只能在 DOM 中获取元素的计算样式,因为它的计算样式取决于它的位置、周围的内容以及使用的样式。

相反,如果您知道 DOM 元素的特征以及它的位置,您可以在相同的位置为它添加一个占位符,使用相同的类等;然后获取它的样式,从中获取top,然后将其删除。如果您在一个序列中执行所有操作而不返回到事件循环,用户将永远不会看到它。


推荐阅读