6

+ +を押したときに、テキストエリア内の選択したテキストに対して特定の操作を実行するユーザースクリプトを作成しました。CTRLSHIFTB

これはkeypress、テキストエリアのイベントを登録してから、押されたキーを確認することによって行われます。ブラウザがキーの組み合わせを処理しないようにするために、preventDefault()Firefoxで正常に機能する方法を使用しています(ライブラリウィンドウは開かれませんが、代わりにコードが実行されます)。

ただし、Chromeでは、そのキーの組み合わせによってブックマークバーが開き、keypressイベントはトリガーされません。

Chromeでそのようなショートカットを作成する方法があるのだろうか。ユーザースクリプトで動作する必要があります。FirefoxとChromeの2つの異なる「バージョン」を維持したくないので、実際の拡張機能はオプションではありません。

4

1 に答える 1

6

どうやら、Chrome UIはkeydown代わりにトリガーされますkeypressこのQuirksmodeの記事は、実際の文字が挿入されているときに-keypressが起動することになっている理由を示唆している可能性があります)。

したがって、適切な行を次のように変更します。

$(document).on('keydown', '.wmd-input', function(e) {

FFとChromeの両方で動作するようです。

于 2012-06-24T23:19:53.537 に答える