jquery – WebSockets?是否开始使用基于Javascript的基于浏览器的MMO

WebSockets的?我刚刚遇到了websockets,并且已经听到了一些关于它的好东西,但是发现 html5目前还不是很容易获得,所以将它转换为将基于浏览器的MMO写入websockets并让游戏玩家升级/是值得的下载他们需要的东西或使用彗星,如果有人浏览器支持websockets;那样跑吗?有什么想法吗?

解决方法

答:这不是太新,几乎每个浏览器都可以使用.

WebKit已经支持WebSockets很长一段时间了(基本上任何使用Safari或Chrome的人都有).从iOS 4.2开始,WebSockets已经打开(Apple在以前的版本中已经取消激活). Opera 11.0将拥有它(10.7现在是11.0). Firefox 4.0包含但认情况下已禁用(在about:config中启用). Firefox 5.0或6.0可能认启用它.

对于其他浏览器,您可以使用web-socket-js这是基于Flash的回退.它运行良好,并且很容易做自动回退.它比本机WebSockets慢,但仍然具有远低于AJAX / COMET的延迟.

如果Javascript是后端的有效选项,那么您可以考虑将NodeSocket.IO库用于Node. Socket.IO主要是一个服务器端库,它支持WebSockets(它包含了web-socket-js falback)和各种AJAX / COMET / long-poll方法. Socket.IO的客户端允许您使用与服务器端相同的API(它与普通的WebSockets API非常相似),它可以检测并选择最佳传输.仅当浏览器没有本机WebSockets并且您选择不使用回退时,才使用AJAX / COMET / long-poll传输.

noVNC(HTML5 VNC客户端)包含websockify,它是Web套接字到TCP套接字代理.有三种实现:C,python和Node.它可能是一个有用的参考. noVNC通过WebSockets传输大量数据,并且对延迟非常敏感. Flash回退肯定效率较低,但它仍然具有非常实用的性能. (免责声明:我做了noVNC)

总结:目前唯一不支持WebSockets的地方是没有本机WebSockets且没有Flash的浏览器(即当前iOS和较旧的Android手机).

一些misc笔记:

>我发现http://caniuse.com是HTML5(及相关)浏览器支持信息的最佳资源.
> HTML5 Cross-browser Polyfills一个非常有用(长)的填充程序,后备和填充列表,它们将HTML5功能添加不支持它们的浏览器中.

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...