Pressionar a tecla da seta para baixo em uma caixa de seleção via javascript

Por razões estranhas, tenho que alterar o elemento selecionado em uma caixa suspensa, não via e.selectedIndex, mas através da simulação de eventos de mouse e pressionamento de tecla.

Eu tentei o seguinte:

//e = the dropdown
e.focus();

//my custom function to fire mouse events. This opens the dropdown.     
fireMouseEvent("mousedown", e);

//firing the key press, tried it via keydown, keypress and keyup. Nothing works.
var evt = e.ownerDocument.createEvent("KeyEvents");
evt.initKeyEvent("keydown", true, true, null, false, false, false, false, 40, 0);
evt.initKeyEvent("keypress", true, true, null, false, false, false, false, 40, 0);
evt.initKeyEvent("keyup", true, true, null, false, false, false, false, 40, 40);

e.dispatchEvent(evt);

Estou fazendo algo errado ou isso é impossível?

Obrigado.

questionAnswers(1)

yourAnswerToTheQuestion