我正在尝试为Web浏览器创建一个基于窗口的应用程序。窗口数量相当高,所以我将它们存储为HTML文件(每个窗口一个),我根据用户交互从服务器异步检索。
要向主页面添加窗口,我首先将下载文档的链接元素(CSS)添加到 head 部分,然后添加内容 body 部分到某个 div 。当窗口关闭时,我只是删除这些元素。
这种方法看起来效果很好,但我可以看到,有时当我添加一个窗口时,它的元素在没有样式的位置上可见,并且在短暂的时刻之后它们被正确地绘制。
我没有强大的网络编程背景,但我怀疑这可能与它所谓的“浏览器重排”有关。这是否意味着它需要花费太多时间来重绘一切?是否可以隐藏这些“没有样式”的元素,直到可以安全地显示它们?
任何指导都将不胜感激。
答案 0 :(得分:0)
离电脑有一段时间似乎已经放松了我的心思。我错误地认为在 head 部分添加新的 link 元素会立即加载CSS文件。显然,浏览器需要先从服务器检索它们。因此,我添加的DOM元素没有显示它们的样式,因为尚未下载CSS文件。我认为这是正确的答案。