タグ ‘Firefox’ 一覧
ExtJS Tips FirefoxでExtJSとブラウザのコンテストメニューが重なるときの対応方法
今回は備忘録も兼ねてFireFoxのコンテクストメニュー(右クリックメニュー)とExtJSで設定したコンテクストメニューが重なる場合の対処方法の紹介です。
グリッドなどで独自のコンテクストメニューを作成したときに、ブラウザのメニューを出さないようにキャンセルさせるには、以下のようにコンテクストメニューのイベントでe.stopEvent();を実行します。
/**
* コンテクストメニューを生成
*/
onContextClick: function(grid, index, e)
{
・・・
e.stopEvent();
grid.contextMenu.showAt(e.getXY());
・・・
}
通常はこれでブラウザのコンテクストメニューはキャンセルされて表示されません。
しかしFirefoxでは、まれに以下のようにブラウザのメニューが表示されてしまい、Extのメニューを覆ってしまいます。
この動作はJavaScriptのコードバグではなく、ブラウザのJavaScriptの実行設定が原因のようです。
ブラウザのJavaScriptの実行設定を変更します。
Firefox > ツール > オプション > コンテンツ > JavaScriptを有効にする > 詳細設定 > コンテキストメニューを無効化または変更する にチェックを入れる
これでExtのコンテキストメニューだけが表示されるようになります。
JavaScriptのセキュリティを強化しているFirefoxでよく見かけるので、特定のFirefoxだけおかしい場合に疑ってみてください。




