私はいくつかの興味深いjavascriptの元に戻すマネージャーを見つけました。私たちは最終的にHTML5でブラウザーに実装されるものを持っています。イベントバインディングを元に戻す/やり直す
- はCtrl + Zは、Ctrl + Shiftキー+ Z
- :UndoManagerを駆動するためにjQueryを使って '元に戻す' トリガするもので、ユーザーのアクションをキャプチャする方法ですについて私はよく分からないものを今
、 編集>元に戻すか編集ではCmd + Z、CMD + Shiftキー+ Z
- ユーザがクリック>自分のブラウザに
私をメニューをやり直しますこれで最初の刺し傷は、このようになります:
function keypress(e){
if (e.metaKey) {
Collage.console(e);
switch(e.keyCode){
case 122: // Mac
if (e.shiftKey) {
undoManager.redo(e);
} else {
undoManager.undo(e);
}
case 26: // PC
if (e.shiftKey) {
undoManager.redo(e);
} else {
undoManager.undo(e);
}
}
}
};
$('#my-thing-with-undos').bind('keypress', keypress);
が、どのように私は(現代の)ブラウザの[編集]メニューのプログラムをアップし続けていることを確認していますか?
ブラウザは、その領域で何をどのように元に戻すか、少なくとも編集を実行しないようにしたい(実際はcontenteditable = true
地域です)。心の中で、これまでのキーストローク特定の時間のを保存するためにarray
を使用
2行目のif(e.metaKey)は、ControlまたはCommandが確実に停止していることを確認する必要があります。 – ilpoldo
ブラウザのデフォルトの動作をどこかでブロックしない限り、これは動作しません。 – podperson