[IE] 検索ボックスはCtrlキーのkeydownイベントが発行されますので注意

こんばんは。
書こうかなと思っている記事が思ったよりたまってきたおじいさんです。
まあ、ぼちぼち消化していきたいと思いますが。
本日は、IEの変な動作について。よくある右上のgoogleなんかの検索ボックスのキーイベントの件です。
あ、twitter連携もしてますが、どーなることやら。

これは、JavascriptマスターのH氏に教わったわけですが(というかこの現象をおいかけていた)、どうもですね、ieではキーイベントが変なんですよ。

サンプルコードa.html

<div id="txtarea">
Here
</div>
<script>
var t = document.getElementById("txtarea");

document.onkeydown = function() { t.innerHTML = t.innerHTML+"<br>down";};
document.onkeypress = function() { t.innerHTML = t.innerHTML+"<br>press";};
document.onkeyup = function() { t.innerHTML = t.innerHTML+"<br>up";};

</script>


これをIEに読み込ませまして、んで、右上の検索ボックスでCtrlを押す。

すると、なぜかdownだけ反応するという。
shift, esc, backspace, del、通常のキーはまったく反応しないのですが、なぜかCtrlのkeydownだけ反応します。

なんで、keyeventのUP,Downだけを信じて操作していると、おおハマリするという事が考えられます。
ちなみに、バージョンはIE8で試しましたが、IE6,7でも発生するようです。

んな阿呆なーというバグですが、ご注意を。


ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

この記事へのトラックバック