【发布时间】:2021-11-22 17:06:57
【问题描述】:
我试图避免CSS Reflows,
通常DocumentFragment 足以满足我的需求。
当我修改/添加/删除datasets时,我有一些案例,
问题是每个dataset 都需要一个导致回流的操作..
element.dataset 是一个只读对象,所以我想知道如何在这个例子中只用一个回流而不是 3 个来做到这一点?
element.dataset.a='1'
delete element.b
element.dataset.c='2'
完全替换元素是实现此目的的唯一方法吗?
【问题讨论】:
-
在观看了here 关于 CSS 回流的视频后,我不确定他们甚至不知道他们在说什么。根据我的编程逻辑,我很确定 DOM 是循环的,所以任何更具体的内容实际上都会阻止绘制 DOM 树。太多的动画或变换可能是一个问题。
DocumentFragment仅用于将内容附加到document。我不建议使用它,因为在将事件附加到 DOM 之前,您不能将事件附加到DocumentFragment中的节点。
标签: javascript css reflow