« 反逆するつもりだった(BlogPet) | トップページ | 12月01日のココロ日記(BlogPet) »
2009.11.29
メモ: IE8の「右クリック」から起動する JavaScript でも prompt を使えるようにする方法
Internet Exporler には、「右クリック」で表示されるメニュー(context menu)経由でいろんなコマンドやツールを起動する機能、いわゆるコンテキストメニュー拡張(MenuExt)があります。この MenuExt は、JavaScipt (以外に VBScipt 等も使える) でコマンドやツールを記述して、レジストリに登録することで、使えるようになります。
IE6 までは、単にレジストリに登録するだけで使えた(今までIEが入ってなかった環境に IE6 を入れた場合は、セキュリティ関連の設定が必要になります。すでに IE5.x が入っている状態からのアップデートの場合は不要)のですが、IE7 以降は「既定」の設定のままでは動かなくなってしまいました。
IE7 のときは、「インターネットオプション」の設定をいじれば動くようになりました。IE8 では、「既定」のままでも問題なく動くものがある(セキュリティ的にそれでいいのか疑問ですが)一方で、なぜか途中まで動いて終了してしまうものがあるという、よくわからない状況になっています。
どういう JavaScript が動かなくなってしまったかというと、prompt を使っているものが動かなくなってしまったことを確認しています。alert や confirm は問題なく実行されるのに、prompt を実行しようとしたところで強制終了。わけがわかりません。
IE8 の新機能「セーフティ」はとりあえず、無関係。次に、「インターネットオプション」の「セキュリティ」。設定をいろいろいじって試してみましたが、全く効果なし。
結局、IE7 のときにもいじった「詳細設定」の「マイコンピューターでのファイルでのアクティブコンテンツの実行を許可する」を「許可する」設定に変更することで解決。prompt を使っている JavaScript も動くようになりました。
「マイコンピューターでのファイルでのアクティブコンテンツの実行を許可する」をチェック
それにしても何で prompt だけ、こんなことになってしまってるんでしょうね。不思議です。IE7 のときは、prompt だけじゃなくて、MenuExt な JavaScipt 全滅だったのに。セキュリティ的には IE7 の方が正しい「既定動作」だと思います。不評だったとかで変えちゃったのかなぁ? それにしても中途半端な変更ですね。
投稿者: tsupo 2009.11.29 午前 06:03
| 固定リンク
|
|
|
|
|
アマゾンわくわく探検隊
トラックバック
この記事のトラックバックURL:
この記事へのトラックバック一覧です: メモ: IE8の「右クリック」から起動する JavaScript でも prompt を使えるようにする方法: