2

GWT と GXT を使用しており、CTRL-S (または CTRL-SHIFT-S) などのキーボード ショートカットを使用して現在のフォームを保存したいと考えています。問題は、ブラウザの組み込み CTRL-S を無効にする方法がわからないことです。componentEvent を使用して、stopevent、cancelbubble などを呼び出してみましたが、うまくいきませんでした。私も使ってみました

Event.addNativePreviewHandler(new Event.NativePreviewHandler(){  
}

イベントを停止しようと呼び出しevent.getNativeEvent().preventDefault();ますが、それも機能しません。

キーボード ショートカットを機能させることができるようになりましたが、ブラウザのイベントも起動します (ブラウザの保存ダイアログを開くなど)。

これを機能させる方法についてアイデア/ヒントを持っている人はいますか? 私は実際に使用したいショートカットをいくつか持っていますが、多くはブラウザと競合しています - ブラウザのアクションを上書きする方法を見つけようとしています.

4

3 に答える 3

2

標準的なアプローチではないキーボード ショートカットをオーバーライドしようとするよりも、キーの組み合わせを見つける方が適切です。

于 2011-09-28T11:12:02.617 に答える
1

preventDefault()KeyDownEventでメソッドを呼び出します。これは、Dom Handler を追加したときに機能し、gmail がどのように機能するかについての JavaScript フォーラムからも参照されました。Chrome では CTRL-S は機能しますが、CTRL-N は機能しないことに気付きました。後で他のブラウザをテストします。

お役に立てれば、

イアン。

于 2011-02-09T15:17:00.067 に答える
0

私自身の質問に答えるために、組み込みのブラウザキーボードショートカットと競合しないCTRL+ALTショートカットを使用することにしました。

于 2010-07-29T18:11:28.330 に答える