- PR -

IEの[ALT]+[HOME]を無効にしたい

1
投稿者投稿内容
シュワンツ
ベテラン
会議室デビュー日: 2002/08/27
投稿数: 56
投稿日時: 2005-10-28 09:08
いつも参考にしています

検索しても見当たらないので、投稿します。
※IE ALT HOMEにて検索してみました。

・実現したい事
IEの[ALT]+[HOME]を無効にしたい

・やってみた事
onkeypressイベントにて、[ALT]+[←]等のALTを無効にすることはできましたが、
[ALT]+[HOME]は、このイベントでは、拾えない。

何かヒントなる事があればお願いします。
でっち6号
大ベテラン
会議室デビュー日: 2005/01/31
投稿数: 176
お住まい・勤務地: Kawasaki
投稿日時: 2005-10-28 09:23
こんにちは、でっちです。

JavaScriptで良いのですかね?
私の試したところ、onkeydownだとAlt+Homeも検出できました。
keyCodeは36です。

onkeypressだと取れないのかなー。今度試してみよう。
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2005-10-28 09:30
他の所でも書きましたが、やめた方がいいですよ。

※というより、WEBアプリケーションの事をある程度理解されている方なら、
 クライアント側にスクリプトを仕込む事は、言うなれば「余技」と理解して作っていると思います。
 そういった「言うなれば小手先」の部分に依存したシステムは破綻します。
 (もし、そういった事を理解されて、なお「こんな事出来ないかな?」という感じで質問されているのなら申し訳ありません。)
シュワンツ
ベテラン
会議室デビュー日: 2002/08/27
投稿数: 56
投稿日時: 2005-10-28 10:23
でっち6号様、冬寂様 早速のコメントありがとう、ございます。

冬寂様のおっしゃる通りだと思いますが、興味があるので投稿しています。

でっち6号様の指摘どおり、onkeydownで拾えているが、
[ALT]+[HOME]を無効にできない???

サンプル
<html>
<head>
<script language="vbscript">
sub okc()
if window.event.altkey then
window.event.returnValue=false
end if
end sub
</script>
</head>
<body onkeydown="call okc()">
</body>
</html>



でっち6号
大ベテラン
会議室デビュー日: 2005/01/31
投稿数: 176
お住まい・勤務地: Kawasaki
投稿日時: 2005-10-28 11:11
こんにちは、でっちです。

すみません、無効にする"だけ"はできないみたいですね。
なぜか、MasBoxとかを出すとちゃんと止まります。

どっかで似た情報を見た記憶があるのですが、、、
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2005-10-28 15:21
引用:

シュワンツさんの書き込み (2005-10-28 10:23) より:
おっしゃる通りだと思いますが、興味があるので投稿しています。


承知の上の事なんですね。失礼しました。

では、ちょっとしたページを紹介しておきます。
cross-browser.comから、property viewerで色々動かしてみると、なんとなく分かってくるのではないでしょうか?

これは自分の推測ですが、Javascriptに渡るのは、IEが必要なeventを全部横取りした後のもののみ渡されてるのでは無いかと思います。
そうである以上、IEに横取りされているeventを先にキャッチして横取りする方法(ActiveXなどの、windowsのAPIに直接アクセスできるようなもの)を使う以外無いのではないでしょうか?

>でっち6号さん
メッセージボックスを出すと止まる・・・というのは、以前このフォーラムのどこかに出てきた、「ctrl+Pでの印刷を出来なくする」というような話題だったと思います。
ダイアログを出した時は動作するってなんらかのバグが絡んでいるのでは無いかと思いますが・・・
シュワンツ
ベテラン
会議室デビュー日: 2002/08/27
投稿数: 56
投稿日時: 2005-10-28 17:11
でっち6号様、冬寂様 忙しいところ、ありがとうございます。

>cross-browser.comから、property viewerで色々動かしてみると、
>なんとなく分かってくるのではないでしょうか?

これは、全くしらないので、研究したいと思います。
ありがとうございました。
1

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