проблема с Ajax

Статус
Закрыто для дальнейших ответов.

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
сабж:

есть страница с AJAX идеологией. запрос идет к БЫСТРОМУ движку - ответ:

вариант 1) в опере более менее сносно. скорость ~секунда
вариант 2) в ИЕ браузер подвисает и предлагает прекратить скрипт секунд через 10. при ответе НЕТ нормально выводит что ему положено. при ответе ДА просто прекращается обработка скриптов на странице.

код создания объекта стандартен, но приведу его всеравно:
Код:
var ro;   // RequestObject
var browser = navigator.appName;

if(browser == 'Microsoft Internet Explorer')
{
  ro = new ActiveXObject('Microsoft.XMLHTTP');
}else
{
  ro = new XMLHttpRequest();
}
при обработке события готовности не используются Callback ибо требуется ожидание данных от сервака. это несомненно снижает скорость, но не настолько чотбы падал ИЕ.

кто что может подсказать дельное по этому вопросу? ибо сроки горят и все на лету делается...
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
Вообще говоря, я всегда для этих целей использовал Subsys_JsHttpRequest и у меня никогда таких проблем не было.
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
читали читали данную статейку... с используемым мной методом тож не наблюдалось проблем.. ахез откуда они вообще взялись. с yahoo'совским yui компонентом connect имеет много общего...

будем копать...

еще один момент... движок не на php сроду.. а на с++. ясн што общее у них есть, но .. но... :(
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
как временный выход из ситуации использую для ИЕ: "Msxml2.XMLHTTP.6.0"

следующий выход - использование Callback() .. но не всегда мне это подходит.
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
новые решения:

порывшись в инете по данной теме вследствие того факта, что мой пример выше работает далеко не на всех ИЕ одной и той же версии, и ничего не найдя вменяемого, пошел к виновнику (т.е. на мсдн.микрософт.ком) и оттуда почерпнул инфу насчет всеж асинхронности.

{xmlhttpobject}.open({method},{url},false);

именно этот false и дает право убрать дальнейшую проверку на ответ от сервака (в случае завершения запроса 4-код результата), что в некоторых случаях вешало ИЕ.

код отточен под оперой, лисой и ИЕ. везде гут.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ