Whenever one finds oneself struggling with interacting event handlers, the order of which is not consistent across browsers, one ends up doing something horrid like this:
myEventHandler = function (evt) {
setTimeout(function () {
... my intended side-effect ...
},
100 // Magic delay in milliseconds,
// which we pray will force the
// right order of events.
};
Bleh. A thousand times, bleh. Please write in if you have a good solution to this problem.