Вы ищете что-то, что отправит событие. Вот что должно работать:
function fireKey(el)
{
//Set key to corresponding code. This one is set to the left arrow key.
var key = 37;
if(document.createEventObject)
{
var eventObj = document.createEventObject();
eventObj.keyCode = key;
el.fireEvent("onkeydown", eventObj);
}else if(document.createEvent)
{
var eventObj = document.createEvent("Events");
eventObj.initEvent("keydown", true, true);
eventObj.which = key;
el.dispatchEvent(eventObj);
}
}
Я провел небольшой тест интерфейса, который, вероятно, заинтересует вас. Вот как это выглядит: http://jsfiddle.net/FvCut/6/
Протестировано как работающее в Firefox 3.6, Opera 11, Safari 5, IE 8 и IE 7 / IE Quirks Mode. Примечательно: Opera 11 не запускает повторяющиеся события «нажатия клавиш», когда вы удерживаете клавишу нажатой, как в большинстве браузеров.