Это вещь:
мой звонок Ajax является синхронизацией. и проблема с хромом только
синхронизации AJAX устарела и Chrome на самом деле does not process it anymore, показывая это предупреждение в консоли:
Синхронный XMLHttpRequest в основном потоке является устаревшим из-за свои пагубные последствия до конца опыт пользователя. Для получения дополнительной информации, check http://xhr.spec.whatwg.org/.
Использование async AJAX.
ОБНОВЛЕНИЕ:
Хром фактически, кажется, обработать запрос синхронизации AJAX, однако, показывает маску нагрузки падает до конца. Похоже, в отличие от Firefox, Chrome не дождался, пока интерфейс действительно отобразит маску, прежде чем переходить на следующий бит кода JavaScript. И поскольку следующий бит - это вызов AJAX с синхронизацией, который является , замораживает все, за которым следует myMask.hide()
- мы никогда не видим маску.
Чтобы увидеть маску в Chrome, вы можете поместить небольшую задержку (1 миллисекунду было достаточно на моей машине) после того, как myMask.show();
:
handler(){
var myMask = new Ext.LoadMask(mypanel , {msg:"Loading..."});
myMask.show();
setTimeout(function(){
Ext.Ajax.request({
url: '/echo/js/?delay=5&js=',
method: 'GET',
async: false
});
console.log('hiding mask');
myMask.hide();
}, 1);
}
Во время задержки маска оказывается перед браузер зависает делает синхронизацию AJAX вызов. Рабочая скрипку: http://jsfiddle.net/6d7pyohL/4/
вниз проголосовали за разметили этот вопрос с "Java". Кроме того, вы могли бы предоставить подробную информацию, например. версия ExtJS, Firefox, Chrome, OS, могла бы опубликовать скрипку. – Greendrake
Hi DrakeES, я удалил ярлык java из сообщения, My ExtJS версии 4.2.1, версию Chrome версии 43.0.2357.130 m и ОС Windows 7, не смог опубликовать мой производственный код здесь, а пример jsfiddle не создан прямо сейчас, потому что вызов Ajax не работает на перекрестном домене. Надеюсь, это полезно для вас. –
Hi DarkeEs my JSfiddle - -http: //jsfiddle.net/naveen_ramawat/6d7pyohL/2/ –