[mootools]押されたキーを取得する

mootools1.2ではEventメソッドのプロパティkeyとcodeで押されたキーのキーコードとキーの名前(小文字)を取得出来ますが、ちょっとクセがある。

1
2
3
4
5
6
7
8
9
10
11
12
13
<script type="text/javascript">
//<!&#91;CDATA&#91;
    window.addEvent('domready', function(){
     
    $("text").addEvent('keydown',function(event){
        var p = new Element("p");
        p.set("text","Code:&#91;"+event.code+"&#93; Key:&#91;"+event.key+"&#93;");
        $("test").adopt(p);
    });
     
    });
//&#93;&#93;>
</script>

Firebug使ってるならconsole.log()でもいい

1
2
<input type="text" id="text" size="40" />
<div id="test"></div>

ShiftやCtrlとの同時押しはif文を使う必要があります。
あとIEだとマイナスとかでテンキー使ったとき返るキーコードが変わる事がある。(firefoxとかだと同じ)

1
2
3
4
5
6
$("text").addEvent('keydown', function(event){
    //shift押されたらtrue
    alert(event.shift);
    //CtrlとSの同時押し
    if (event.key == 's' && event.control) alert('Document saved.');
});

コメントを残す

This site uses Akismet to reduce spam. Learn how your comment data is processed.