【发布时间】:2011-05-17 14:41:42
【问题描述】:
嗨 我想知道如何使页面异步重新加载,例如如果有人收到一条消息,最后一条消息将出现而不刷新页面。就像脸书一样。谢谢。
【问题讨论】:
标签: asynchronous refresh reload
嗨 我想知道如何使页面异步重新加载,例如如果有人收到一条消息,最后一条消息将出现而不刷新页面。就像脸书一样。谢谢。
【问题讨论】:
标签: asynchronous refresh reload
您必须使用 JQuery 和 Javascript 之类的东西来轮询服务器以获取更改并将它们显示在 div 中的页面上。
setInterval('someFunc()', 1000)
function someFunc()
{
$.ajax({
async: true,
type: "GET",
url: "www.domain.com/url",
data: data,
success: function (html) {
$("#myDiv").html(html);
}
});
}
这将使用来自 www.domain.com/url 的数据每秒更新 ID 为 myDiv 的 div,传入 data 是一个参数(您必须定义“数据”)
【讨论】:
嗯,有很多方法 但基础是你每隔一秒左右调用一个 ajax 函数 检查外部 php/asp 或任何文件是否对您的文件进行了任何更改 数据库/文本如果是这样 将其附加到聊天框。
附言使用诸如jquery 之类的库可以大大简化事情
【讨论】:
或者您可以使用Comet 模型,它不会对网络造成太大压力,也不会过多地填充网络服务器访问日志。响应速度也更快。 Commet 表示 HTTP 服务器在数据出现时立即将其推送给您。
【讨论】: