タイマーでサーバーに一連のコマンドを送信する必要があります-次のように:
put(0,"hello")
del(4,1)
put(4," is around the corner")
そのため、すべてのユーザー入力を監視および記録し、マクロのようなタイムアウト (アイドル) でコンパイル/フラッシュする必要があります。
onKeyUp
/ onKeyDown
/ onMouseDown
/テキストエリアのカーソル位置とキー情報を使用して///起こっていることすべてを記録できます(そして、onMouseUp
後でクロスブラウザにします)が、マウスの右ボタンを使用して貼り付け、「貼り付け」を選択したり、メニューから貼り付けたりすることはできません(私は処理できますが、貼り付けられているか、押されたキーとしてすでに記録されており、フォーカスが変更された後にのみ起動するという情報はありません)。コンテキスト メニューからの貼り付けでもいくつかの有用な情報が表示されますが、ブラウザからのメニューが唯一のものであり、Javascript には何も提供しません。onChange
jQueryなどのプラグインはありますか? current-document と document-a-second-before を比較せずに実装する方法は他にありませんか?
更新:cut
/ copy
/を処理するためのイベントがありますpaste
: http://www.quirksmode.org/dom/events/cutcopypaste.htmlですが、1 つについてはundo
どうですか?
PS 誰かが本当に必要な場合は、終了時にマクロ記録コードを表示します。そして、それを適切に仕上げるためには、undo
ハンドリングの可能性が必要です。現在のバージョンはこちら: http://code.google.com/p/sametimed/source/browse/WebContent/module-editor.js、メソッドを探しますcompileCommands
。