1

this onethis one、およびthis oneのような多くの質問を見つけました。「右クリックをシミュレートする」または「コンテキストメニューをトリガーする」などの方法を示すことを目的としています。次に、これを見つけました。できません。最初の 3 つの質問はすべて、カスタムコンテキスト メニュー、つまり組み込みのメニューを置き換えるために追加されたメニューをトリガーしていると思います。選択した特定の要素を右クリックするユーザーをシミュレートしたいだけです。

最初の質問のすべての提案を試しました。createEvent("MouseEvents" / "HTMLEvents")initEvent / initMouseEvent("click" / "contextmenu")、jQuerytriggerなどのさまざまな組み合わせです。デフォルトのコンテキスト メニューが表示されることはありません。

本当に無理ですか?ユーザースクリプト (Greasemonkey 内) から「特権」で実行しているという事実は、何か違いがありますか? フルウェイトの Firefox 拡張機能から実行できますか?

4

1 に答える 1

1

そうです、リンクした最初の 3 つの回答は、カスタム メニュー/コントロール用です。

4 番目の答えは正しいです。ブラウザのコンテキスト メニューをアクティブにすることはできません -- ブラウザの通常のメニューをアクティブにすることができないのと同じ理由で... 悪者が悪用する巨大なセキュリティ ホールになります。

同様に、Greasemonkey スクリプトもこれを行うことができません。Greasemonkey スクリプトには昇格された特権がいくつかあります (GM 1.0 以降、サンドボックス モードで実行している場合のみ) が、Greasemonkey の開発者はコンテキスト メニューを使用可能にすることを選択していません。(また、そのような機能が緊急に必要とされていることも聞いたことがありません。)

本格的なアドオンでコンテキスト メニュー (またはメニュー項目) を有効にできると確信していますが、試したことはなく、現時点ではコードを提供できません。

于 2012-09-07T10:24:53.567 に答える