×
Namespaces

Variants
Actions

Manipulando eventos de teclado em widgets

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

Compatibilidade
Plataforma(s):
Symbian

Artigo
Criado por dcrocha em Dcrocha
Última alteração feita por hamishwillee em 08 May 2013

Compatibilidade: Web Run-Time em S60 3rd Edition, Feature Pack 2

Contents

Diferenças entre browsers

Em geral, browsers diferem na maneira em que disponibilizam eventos de teclado no nível JavaScript. Widgets WRT para S60 por exemplo não oferecem todos os eventos de teclado encontrados em outros browsers em campos de texto e componentes input.

APIs específicas de widgets S60 WRT

S60 WRT API

widget.setNavigationEnabled(false);

desabilita o modo de navegação e permite ao código JavaScript coletar também eventos de tecla do cursor.

Exemplo

O exemplo seguinte mostra como explorar diferentes eventos de teclado (e seus códigos) em widgets:

<!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>

Tabela de key codes e char codes

Para referência, aqui estão os valores coletados pela aplicação de teste. O formato é como está no exemplo: 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
green63586/635860/635860/63586
center63557/635570/63557[n/a]/[n/a]
up63497/6349738/63497[n/a]/[n/a]
down63498/6349840/63498[n/a]/[n/a]
left63495/6349537/63495[n/a]/[n/a]
right63496/6349639/63496[n/a]/[n/a]
This page was last modified on 8 May 2013, at 02:58.
68 page views in the last 30 days.
×