javascript - 加载 HTML 页面而不等待某些部分加载

标签 javascript jquery html performance loading

我有一个简单的 HTML 页面,其中包含许多部分,其中一部分

<div id="external_data">...</div>

从外部源渲染数据并加载。加载需要很长时间,因此页面的所有其他部分也等到此部分加载完毕。

有没有办法使用 jQuery 或其他东西来设置 <div id="external_data"> 的内容?到 loading image并在不依赖该部分的情况下加载页面的其余部分?以及如何实现?

最佳答案

如果该 div 的内容在服务器端呈现并与页面的其余部分一起提供,则您可以选择两个选项:

1) 使用包含您提到的加载图形的 div 为页面提供服务,然后在页面加载时使用 jQuery 通过 $.post 或 $.get 加载 div 的内容。这将允许页面在没有任何后端逻辑的情况下提供服务。

2) 如果您不喜欢使用 $.post 或 $.get,您可以在该 div 中放置一个 iFrame,它引用另一个具有 div 内容的页面。这将与页面分开加载,因此不会拖延。但是,请注意,iFrame 有时在大小、边框等方面在浏览器之间表现异常。确保您的代码在所有主要浏览器(主要是 IE)中进行了测试,以确保它在所有浏览器中看起来都正常。

关于javascript - 加载 HTML 页面而不等待某些部分加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18881642/

相关文章:

html - 如何居中元素(搜索表单)?

javascript - 当我双击将在单击时隐藏的特定元素时,双击绑定(bind)到父元素或同级元素

javascript - 响应页面加载弹出窗口

javascript - 如何使用 Angular 打开模式(没有 ui Bootstrap )?

php - 移动到另一页时发出警报

jquery - jquery 的 .value() 不适用于 ICE 上的选择元素

javascript - HTML 将 Chrome 中的工具提示加倍

javascript - 当有人右键单击并选择上下文菜单时,找到我的光标所在的 tr

javascript - Electron :复选框未更改值?

javascript - 想要在不增加或减少任何单个像素的情况下显示从 1680 到 980 分辨率的相似 View