javascript - 如何使用 JavaScript 获取尚不存在的元素的样式?
问题描述
所以,我想获取top
a 的计算样式<div>
并将其放入变量中。但是,这<div>
还没有在 DOM 中。稍后将通过 JavaScript 事件将其附加到 DOM(一旦用户触发.onclick()
事件)。
为此,我尝试了这个:
let style = getComputedStyle(element).top;
但是,这行不通,因为element
它还没有在 DOM 中。如果我尝试这样做,则会出现以下错误:
top
那么,即使该元素不在 DOM 中,我如何才能获取特定元素的样式呢?
解决方案
你不能。您只能在 DOM 中获取元素的计算样式,因为它的计算样式取决于它的位置、周围的内容以及使用的样式。
相反,如果您知道 DOM 元素的特征以及它的位置,您可以在相同的位置为它添加一个占位符,使用相同的类等;然后获取它的样式,从中获取top
,然后将其删除。如果您在一个序列中执行所有操作而不返回到事件循环,用户将永远不会看到它。
推荐阅读
- java - Ejb从jar返回CustomClass
- gatling - 如何将值从一个场景传递到另一个场景?
- c# - C# 从数据集中填充组合框
- node.js - 无法在 SQL Server 2016 中插入单引号
- escaping - 如何在 JSON-LD 中显示带有嵌入式引号的字段?
- python-3.x - 如何将交互式 matplotlib 图插入 tkinter 画布
- javascript - 为什么量角器找不到元素(by.id('mat-input-0'))?
- c# - 使用简单的 http 调用验证 azure-storage-blob 中的文件或文件夹位置
- sql - 如何使用正确的列标题并排显示来自同一个表的三个单独列的并集
- python - 从长字符串中提取特定的字母数字模式