避免在不使用框架/ iframe的情况下重新加载内容

时间:2011-04-17 11:36:34

标签: javascript html ajax asynchronous reload

有很多理由想要避免<iframe>(实际上是框架),但最好的选择是什么? (这里的目的是避免整页重新加载)。

例如,Facebook似乎保持其顶级栏和侧面菜单(大部分)和整页重新加载极其罕见。

搜索解释时几乎不知道什么用作搜索词,这让我几乎没有见解,所以我认为最好在这里提出问题。这是所有Ajax,还是还有更多呢?

2 个答案:

答案 0 :(得分:2)

使用ajax注入部分内容是您最好和最简单的选择 - 我也建议使用jquery。

答案 1 :(得分:2)

<强> AJAX

更传统的方法是“AJAX”。简而言之,您的javascript代码可以在一段时间(每x秒)或用户事件发生时(例如点击按钮)从服务器请求特定内容。

jQuery中的一个非常基本的实现看起来像:

function updateShouts(){     //假设我们有#shoutbox     $( '#在线留言板')的负载( 'latestShouts.php')。 } setInterval(“updateShouts()”,10000);

这将使用从latestShouts.php检索的任何内容每10秒更新一个id为“shoutbox”的div。

更高级的实现将涉及仅以JSON或XML格式检索数据(不是表示),然后使用收到的数据更新现有HTML值。

<强>的WebSockets

最近,浏览器开始支持名为WebSockets的内容。 WebSockets允许您在浏览器和服务器之间保持双向连接,并允许服务器在没有浏览器请求的情况下将信息推送到浏览器。

这在很多方面都更有效率;主要原因是您不必每隔x秒浪费一次服务器调用来检查数据是否存在。 WebSockets允许您在服务器可用时立即显示信息。

我希望有帮助..

干杯!