使用ajax创建在线实时文本编辑器

时间:2012-03-04 17:40:45

标签: php javascript ajax text comet

我打算制作一个实时文本编辑器,

在我的研究之后,我明白google doc正在使用javascript,而非经验的学生很难做到这种应用。

我发现有另一个编辑器同样地执行:

http://collabedit.com/

所以问题是,这个实现基于java脚本还是使用其他更简单的方法? 我想做一些这样的编辑器,我不需要任何语法检查。只允许多用户实时输入字体并通知输入单词的人,这就是全部。

1)我可以通过ajax做到这一点吗?

2)我可以用什么功能来做到这一点?

谢谢。

2 个答案:

答案 0 :(得分:2)

您所描述的内容有点超出了AJAX的功能,并进入了一个稍微更高级的模型,称为COMET(可能包括也可能不包括WebSockets的设施,具体取决于您是谁问)。

Comet或多或少地允许网页和服务器之间的双向通信。这意味着客户端能够向服务器发布通知,并且服务器能够将通知推送到其任何客户端。一个很好的框架可以为你提取这个内容Socket.IO

接下来你需要解决的是后端问题。您需要一个服务器端应用程序来跟踪谁已连接,以便您可以收集更改(来自每个用户的新文本)并将这些更改发布到其他侦听器(参与文本编辑会话的其他用户)。虽然您可以使用PHP,C#等来实现这一目标,但我个人建议您花点时间学习node.js,因为它专门用于处理这种实时多用户应用程序。

最后,我对另一篇可能对您有帮助的帖子here有类似的答案。

答案 1 :(得分:1)

对于您想要实现的目标,您可能最好使用HTML5的新WebSockets。它们使用更小的开销,并且用于扩展的连续连接。

http://websocket.org/quantum.html