2012-04-28 15 views
4

私はjQueryを使用してキー入力イベントをシミュレートできることを検索して発見しましたが、jQueryについての知識は乏しく、正確にはわかりませんでした。スクリプトで制御、キー押しシーケンスをシミュレートしましたか?

私は2つのタブで2つの異なるWebページを管理するGreasemonkeyスクリプトを持っています。
私は、自動的に前のタブに移動するにはCtrl シフトタブを自動実行/シミュレートするために、私はFirefoxでタブを変更することができ、このようにしたいと思います。

問題はそれだけでプレーンなキーの押下ではないということですが、私はあまりにもCtrlキーシフト部品をシミュレートする必要があります。

私は私のスクリプトにこれを追加しました:

// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js 

と試してみました:

function testEvents(){ 
var press = jQuery.Event("keypress"); 
press.which = 9; 
$("whatever").trigger(press.ctrlKey + press.shiftKey + press.which); 

}

を成功せず。私が見てきた

いくつかのリンク: Is it possible to simulate key press events programmatically?simulate jquery、およびhttp://forum.jquery.com/topic/simulating-keypress-events

+0

ブラウザではなくウェブページに送信すると思います。 – Cilvic

答えて

1

JavaScriptが「ショートカット」キーイベントをシミュレートすることにより、デフォルトの動作をトリガするために使用することはできません。

jQueryはJavaScriptコードを書く方法とは異なりますので、この制限も適用されます。
GreasemonkeyスクリプトはJavaScriptに基づいているため、GM_*メソッドのほかに特別な機能を追加することなく、タブを切り替えるUserスクリプトを記述することはできません。

+0

Robありがとうございました。 – Comentarist

+0

これは 'GM_ *'メソッドで可能ですか? – Tom

+0

@Tomなし"gmスクリプトに' GM_ * 'メソッド"のほかに特別な機能はないので、 "タブを切り替えるためのユーザスクリプトを書くことはできません"という文章を読んでください。 –

関連する問題