我正在 JQuery 中的 $(document).ready
中重新排列一些 html 并更改一些 css 值。不幸的是,如果用户的计算机速度不是 super 快,用户会看到原始布局,然后看到屏幕上移动的内容,直到 $(document).ready
完成。我可以隐藏主 div
并将其显示在 $(document).ready
的末尾,但碰巧的是,根据页面的不同,我有多个 javascript 页面为每个 html 页面加载,并且每个 javascript 页面都有一个 $(document).ready 函数。因此,保证哪个最后执行也是另一个障碍。
为了增加更多的复杂性,我从服务器获取了 100 个跨度的 html 片段,每个跨度包含一个图像。我将只显示这个 html 片段的前 n 个元素,并从 dom 中删除其余的元素。 n是在客户端用javascript计算的。我想在实际从服务器提取图像之前执行此操作,因此我只提取显示的图像。
我该如何编写代码:
- 仅从服务器拉取实际显示的图像。和
- 用户看不到页面元素在其前面重新排列。
非常感谢!
最佳答案
1) 在内容上使用 display:none
作为内联样式,并在脚本完成后显示它们
2) 将SRC
留空,并将其放入data_src
,然后在准备显示时将值复制到SRC
<img src="" data_src="/images/image1.jpg" />
关于jquery - 页面在 $(document).ready 中的脚本执行之前渲染以重新排列 html 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8538683/