在没有ajax的情况下实时更改网页内容

时间:2012-07-21 17:06:48

标签: javascript jquery html ajax

我曾经在stackoverflow.com的firebug的帮助下意识到,当有人接受你的回答时,突然你的积分增加而没有收到任何方法的任何Ajax命中。太棒了,怎么可能?

请建议,以便我可以尝试将这项技术应用到我即将开展的项目中。提前谢谢。

3 个答案:

答案 0 :(得分:2)

它在现代浏览器中使用WebSockets而不是 AJAX XMLHttpRequest。您可以在meta.stackoverflow.com上找到有关Stack Overflow实现的更多详细信息。

WebSockets的主要优点是服务器可以在您收到upvote时向浏览器发送更新。其他方法(如XHR和隐藏的iframe)要求浏览器定期轮询服务器以获取更新的投票计数。

答案 1 :(得分:2)

确保您已查看网络选项。我可以用两种方式告诉你。

  1. 网络套接字
  2. iFrame
  3. 请查看http://www.html5rocks.com/en/features/connectivity& http://html5demos.com/web-socket

    但是可以在有限的浏览器上使用

    使用iFrame和简单的get请求不会进行ajax调用,但是你可以看到它的firebug net。这就是Facebook使用的和所有浏览器兼容的。

答案 2 :(得分:1)

您可以使用图片提交按钮并提交到显示该编号的小iframe。

否则,您仍然会使用隐藏的iframe进行操作,并在隐藏的iframe中提交或获取帖子。

如果你真的想要一个javascript较少的解决方案,表单提交隐藏/小iframe是要走的路。