Internet Explorer: как обновить HTML-макет программно? - PullRequest
1 голос
/ 12 июля 2011

У меня есть компонент Active-X на странице HTML с долгосрочным методом (Process), который запускает обратный вызов в javascript.

    activex.Process(
        function (message) {
            // alert(message);  --> message box appears, everything ok 
            $("#panel").text(message);   // panel doesn't refreshed!
        }
    }

<div id="panel" >
        active-x messages should be here! 
</div>

Обратные вызовы работают нормально (я вижу сообщения), но панель не обновляется до тех пор, пока не вернется метод Process.

Могу ли я заставить панель обновляться или я запускаю обратные вызовы из другого потока?

Заранее спасибо!

1 Ответ

1 голос
/ 12 июля 2011

Если вы вызываете activex.Process() из JavaScript, браузер блокируется, пока не вернется функция JS.

Попробуйте создать новый поток в Process() и сразу же вернуться.Это должно «разблокировать» ваш браузер.Механизм JavaScript в IE должен правильно синхронизировать код обратного вызова при вызове его из нового потока.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...