×
Namespaces

Variants
Actions

Web Runtime Widgetsでキーイベントを取得する方法

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata
Compatibility
Platform(s):
Symbian
Article
Translated:
By morisawafnj
Last edited: hamishwillee (08 May 2013)


対象となるバージョン: Web Runtime in S60 3rd Edition, Feature Pack 2

Contents

ブラウザエンジンによる違い

一般的に、ブラウザエンジンが違うと、JavaScriptレベルで確認できる各キーのキーイベントコードも異なります。S60 Web Runtime Widgetsでは、テキストや入力フィールドが、他のブラウザあるいはWidget環境で取得できるキーイベントの全てをサポートしているわけではありません。

S60 Web Runtime 固有のAPI

S60 Web Runtime API

widget.setNavigationEnabled(false);

ナビゲーションモードを使用不可(Disable)にし、JavaScriptコードがカーソルキーイベントを拾えるようにします。

以下に示す簡単な例で、S60 Web Runtimeで提供される各キーイベントを確認することができます。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<script type="text/javascript">
 
/*
* attach key listeners
*/
document.onkeypress = keyPress;
document.onkeyup = keyUp;
document.onkeydown = keyDown;
 
/*
* disable cursor navigation - otherwise cursor
* key events are not received by keypress callbacks
*/
widget.setNavigationEnabled(false);
 
/*
* show keyCode and charCode.
*/
function keyPress(event) {
document.getElementById('keypressField').innerHTML = event.keyCode + " / " +
event.charCode;
}
 
function keyDown(event) {
document.getElementById('keydownField').innerHTML = event.keyCode + " / " +
event.charCode;
}
 
function keyUp(event) {
document.getElementById('keyupField').innerHTML = event.keyCode + " / " +
event.charCode;
}
</script>
 
</head>
<body>
keyCode / charCode:
 
<div>
KeyPress:
<div id="keypressField"></div>
</div>
 
<div>
Keydown:
<div id="keydownField"></div>
</div>
 
<div>
Keyup:
<div id="keyupField"></div>
</div>
 
</body>
</html>

キーとキャラクタコードの対応表

下記で参照できるのは、上記テストアプリケーションから取得できる値です。そのフォーマットは event.keyCode / event.charCode となります。

keykeyPresskeyDownkeyup
048/4848/4848/48
149/4949/4949/49
250/5050/5050/50
351/5151/5151/51
452/5252/5252/52
553/5353/5353/53
654/5454/5454/54
755/5555/5555/55
856/5656/5656/56
957/5757/5757/57
*/+56/4242/4256/42
#51/3535/3551/35
C8/88/88/8
green0/6358663586/635860/63586
center0/6355763557/63557[n/a]/[n/a]
left37/6349563495/63495[n/a]/[n/a]
up38/6349763497/63497[n/a]/[n/a]
right39/6349663496/63496[n/a]/[n/a]
down40/6349863498/63498[n/a]/[n/a]
This page was last modified on 8 May 2013, at 02:58.
92 page views in the last 30 days.
×