У меня есть функция JavaScript, как показано ниже.Заблокировать функцию JavaScript
function changeTheDom(var1, var2, var3) {
// Use DWR to get some server information
// In the DWR callback, add a element to DOM
}
Эта функция вызывается в нескольких местах на странице. Иногда, в цикле. Важно, чтобы элементы были добавлены в DOM в том порядке, в котором вызывается функция changeTheDom
.
Я изначально попытался добавить DWREngine.setAsync(false);
в начало моей функции и DWREngine.setAsync(true);
до конца моей функции. В то время как это сработало, это вызывало полное безумие на остальной части страницы.
Так что мне интересно, есть ли способ заблокировать функцию changeTheDom
. Я нашел this post, но я действительно не мог следовать за циклом else
или как должен был называться lockingFunction
.
Любая помощь, понимающая, что сообщение или просто процедура блокировки будет оценена.
Именно поэтому я правильно понял вопрос: вы хотите вызвать асинхронную функцию внутри вашей функции и дождаться ее завершения, а затем выполнить оставшуюся часть вашей функции? – basilikum
Да. Ха-ха. Как уже упоминалось, выключение асинхронности внутри функции вызвало много хаоса. –