Возможно, вы можете добавить второго прослушивателя для «загрузки» событий. Я не смог найти документацию, подтверждающую, что слушатели событий вызываются, чтобы они были установлены, но некоторые эксперименты с приведенным ниже кодом показывают, что это так. Если состояние гонки я бы ожидать, чтобы увидеть иногда «AB», а иногда и «BA»:
<input type="text" id="field"/>
<script>
var t = document.getElementById("field");
t.value="";
function a(e) {
t.value = t.value + "A";
}
function b(e) {
t.value = t.value + "B";
}
window.addEventListener("load", a, false);
window.addEventListener("load", b, false);
</script>
Одна вещь, чтобы быть осторожным с этим, что если добавить второй слушатель событий слишком поздно (т.е. нагрузка событие уже запущено), это не будет вызвано.
В любом случае, это похоже на взломать, но это просто идея, если вы не можете найти лучший способ справиться с этим.