Eu estava procurando uma maneira de simular eventos “onkeydown” em meus testes QUnit. A resposta está no objeto JQuery Event ( http://api.jquery.com/category/events/event-object/ ).
// create and trigger onkeydown events
$(this).bind("OnUpArrowKeyDown",
onUpArrowKeyDownEventHandler);
var upArrowKeyEvent = jQuery.Event("OnUpArrowKeyDown",
{keyCode: 38});
$(this).trigger(upArrowKeyEvent);
function onUpArrowKeyDownEventHandler(event) {
if(event.keyCode == 38)
; // do something
}
Para obter mais exemplos sobre a criação de eventos personalizados com parâmetros, consulte http://jsfiddle.net/ivan_sim/hWKYf/ .
Para obter uma lista de códigos de teclado completos, consulte http://www.webonweboff.com/tips/js/event_key_codes.aspx .