Должен признаться, это мой первый пост на этом сайте, поэтому извиняюсь за совет, если что-то делаю не так (форматирование и т.д.).
В любом случае, я создаю что-то вроде mmo, используя javascript (и jQuery), и пока все работает нормально в Chrome, Safari, Firefox и т. д. Однако я обнаружил, что где-то по пути происходит сбой Internet Explorer.
Воспроизведя сбой, я сузил его до этого кода:
function getUpdates(){
var data={uid:playerName,area:1,mid:lastMessage};
$.ajax({
url: "getUpdates.py",
timeout: 32000,
data: data,
type:"GET",
complete: function(obj, textStatus){
//handleUpdates(obj);
getUpdates();
}
});
}
Который должен опрашивать обновления в течение длительного времени. Однако в IE после одного ответа этот код застревает в бесконечном цикле, что приведет к сбою браузера. Кажется, что он не падает после каждого ответа, только если нет ответа сервера.
Обратите внимание, что строка с надписью «complete:...» была опробована как:
success: function(...){getUpdates();...},
error: function(...){getUpdates();...}
с той же проблемой.
javascript
и/илиajax
вместоlong-polling
. - person SLaks   schedule 06.09.2010