jQuery 使用 Web Worker 渲染

jQuery Rendering with Web Workers

我知道 Web Worker 无法访问主文档 DOM,但是有没有人成功地尝试使用 jQuery 在 Web Worker 中构建部分 DOM,输出结果 HTML 然后将其附加到文档 DOM?

与 UI 线程上的渲染相比,它是否提供了很大的性能改进,值得以线程安全的方式实现它的额外痛苦?

这会尝试使用 Web Worker 来做一些不应该做的事情吗?

这在很大程度上取决于您要生成哪种 HTML。但是,您可能已经监督了一个大问题。不仅仅是不能访问主线程的DOM。

You cannot create HTMLElement object instances in worker at all.

因此,即使您经历了生成 HTML 的麻烦,您也必须将其转换为 HTML 字符串或 JSON,然后在主线程中对其进行解析,然后将其转换为 DOM 对象。

唯一值得这样做的情况是生成 HTML 的数据CPU 密集。在这种情况下,您可以只生成数据,发送到主线程并显示在 HTML.

This is also good approach to keep data processing and visual rendering separate.