У меня проблема с обработкой события фокуса в приведенном ниже коде в IE8. Я получаю следующий вывод:
LOG: set focus txt1
LOG: set focus txt2
LOG: txt1 focus
LOG: txt2 focus
, но во всех других браузерах вывод:
LOG: set focus txt1
LOG: txt1 focus
LOG: set focus txt2
LOG: txt2 focus
itКажется, что IE8 ставит в очередь все запросы фокуса и выполняет обработчики событий после завершения текущей функции.
Есть ли обходной путь, чтобы заставить IE8 вести себя так же, как в других браузерах?
<html>
<head>
</head>
<body>
<script>
function test(){
console.log('set focus txt1');
document.getElementById('txt1').focus();
console.log('set focus txt2');
document.getElementById('txt2').focus();
}
</script>
<input id="txt1" type="text" onfocus="javascript:console.log('txt1 focus')" style="width:100px" />
<input id="txt2" type="text" onfocus="javascript:console.log('txt2 focus')" style="width:100px" />
<button value="Click" onclick="javascript:test()"></button>
</body>
</html>