- PR -

IE7 ALT+ENTER & CTRL+

1
投稿者投稿内容
ぴあちゃん
ぬし
会議室デビュー日: 2008/02/07
投稿数: 287
投稿日時: 2008-11-24 02:01
質問です。
追記2:カテゴリ間違えてる・・・PGM は Java/struts です、済みません。

イントラWEBシステムや、特定ユーザー向けWEBシステムの開発で IE7 対応を
されている方もいらっしゃると思いますが、

うちの開発では Webシステムの本質とは全然関係無い作業で対応におおわらわ
しています。

VPNで制限サイトカテゴリに分類されるため、アドレスバーやツールバーの類は
非表示に出来ます。もちろん、ステータスバーも。

但し、ただいまの懸案事項は、
・ALT+ENTER
・CTRL+"+"
・CTRL+"-"
・CTRL+"0"
の4つです。
これらは、スクリプトでハンドリングこそ出来ますが、ブラウザ本体よりも前に
Window自体がハンドリングしているらしく、「スクリプトで無効に」出来ません。

フルスクリーンモードの何がダメかというと、
location=no,status=no で window.open してるのに、フルスクリーンモードに
なった途端に、画面上部に隠れるアドレスバーと戻る・進むボタン、さらには、
検索バーとリロードボタン、設定変更用のメニューまで全部出てきてしまうこと
です。

ズーム機能は、ボックスレイアウトで一部float 関係の表示がうまくいかない
障害があるらしいのですが、画面自体にスクロールバーを出すこと自体が禁止
なのでこれも無効にしたいです。


何か方法知っている方がいらっしゃいましたら教えてください。

レジストリは、
NoTheaterMode=1
Zoom=1
にすることにより、前者は、ALT+ENTERを、後者は、CTRL+"+" or "-" or "0" を
禁止に出来ることはわかっています。

レジストリは最終手段と
考えています。


レジストリ書き換え用ツールは、DOBON.NET の記事を参考に VB.NET 2008&.NETFw3.5
で作成し、XP-IE6 ですが、NoTheaterMode は禁止に出来ることは確認できています。

追記3:
WindowsXP-SP2 ですが、IE7 をダウンロードして、
Private RestPath As String = "Software\Policies\Microsoft\Internet Explorer\Restrictions"

Private ZoomPath As String = "Software\Policies\Microsoft\Internet Explorer\Zoom"

上記パスでレジストリに

NoTheaterMode=1,ZoomDisabled=1 でズーム・フルスクリーンを無効に出来ることは
確認できました。


追記4:ちょっと文言訂正;;


[ メッセージ編集済み 編集者: ぴあちゃん 編集日時 2008-11-24 02:05 ]

[ メッセージ編集済み 編集者: ぴあちゃん 編集日時 2008-11-24 02:07 ]

[ メッセージ編集済み 編集者: ぴあちゃん 編集日時 2008-11-24 02:49 ]

[ メッセージ編集済み 編集者: ぴあちゃん 編集日時 2008-12-05 01:30 ]
ぴあちゃん
ぬし
会議室デビュー日: 2008/02/07
投稿数: 287
投稿日時: 2008-12-05 01:19
レスが付かないからあげる必要ないのだけれど。。。

IE7 ALT+ENTER 抑制方法

コード:

document.onkeydown = function() {

   if (event.keyCode == 13 && event.altKey) {

        event.keyCode = 37;// or 39
        event.returnValue = false;
        return false;
        //keyCode=37 はページ戻る、keyCode=39 はページ進む に対応する
        //なぜこれで無効に出来るのかは謎のまま。中国語のページにそれ
        //らしい記述はあったけど、読めないので雰囲気だけだが。。。
   }

}



他には同様の手順で

ALT+ENTER     フルスクリーン(トグル)
ALT+F4      強制終了
ALT+F3      検索ダイアログ表示

を抑止(無効)出来ます。


ぴあちゃん
ぬし
会議室デビュー日: 2008/02/07
投稿数: 287
投稿日時: 2008-12-12 01:27
最後にします。

CTRL+"+" or CTRL+"-" or CTRL+"0" の抑止方法

  showModalDialog 内で IFRAME を使う。

つまり、
コード:

<html>
<head>
<style>
*{ margin:0; }
</head>
<body>
<iframe src="xxx.aspx" width="100%" height="100%" frameborder=no
scrolling=yes></iframe>
</body>
</html>



ってやってあげれば、抑止できます。まるっきり現実的ではありませんが・・・


ちなみに、showModalDialog内 で
CTRL+"+" or CTRL+"-" or CTRL+"0" は押下するとスクリプトエラーになるので
注意です。このスクリプトエラーは回避(エラー窓を出さないようにすること)
はできません。


以上


[ メッセージ編集済み 編集者: ぴあちゃん 編集日時 2008-12-12 01:31 ]
1

スキルアップ/キャリアアップ(JOB@IT)