IE прерывающий проблему ajax - PullRequest
       2

IE прерывающий проблему ajax

0 голосов
/ 22 сентября 2010

У меня проблема с IE7, но не в Chrome или Firefox:

У меня есть несколько элементов страницы, которые загружаются через ajax. Эти элементы динамически отображаются на странице в виде гиперссылок на другую страницу. Поскольку у меня загружается много таких элементов, иногда я вижу, как загружается страница (т. Е. Я вижу, что элементы заполняются один за другим).

Проблема в том, что в IE, когда я пытаюсь щелкнуть гиперссылку одного из динамически загружаемых элементов до того, как все запросы ajax завершены , передача страницы, как представляется, просто останавливается, пока все элементы не загружен (и затем выполняется после завершения загрузки). В других браузерах, однако, нажатие на одну из ссылок во время загрузки страницы немедленно запускает гиперссылку (что является желаемым поведением).

Кто-нибудь видел это раньше? Как я могу заставить IE немедленно реагировать на щелчки по ссылке?

1 Ответ

0 голосов
/ 22 сентября 2010

Хмм ... Интересно, IE обрабатывает все HTTP-запросы так же, как AJAX-соединения?

Каждый браузер позволяет установить не более двух AJAX-соединений с одним доменом. Если 2 AJAX-соединения уже открыты, другие AJAX-запросы не будут выполняться до тех пор, пока не будет завершено хотя бы одно из них.

Судя по тому, что вы описали, похоже, что IE не позволит вам устанавливать какие-либо дополнительные HTTP-соединения до тех пор, пока не будут выполнены все ваши AJAX-соединения?

[Примечание для себя: нужно Google что-то, чтобы поддержать то, что я сказал.]

Hm. Чтобы решить проблему, как это звучит?

  1. При выполнении вызовов AJAX сохраняйте объекты XmlHttpRequest, которые код создает где-то. (Может быть массив / объект?)
  2. Присоедините событие onclick к ссылке, и, когда ссылка будет нажата, выполните цикл по списку XmlHttpRequest на шаге # 1 и вызовите xmlHttpRequest.abort (), чтобы отменить все вызовы. ( Ссылка на API в W3C. )

Примечание: Интересно, в чем причина такого странного поведения в IE ... интересно, если у IE возникают проблемы со сборкой мусора всех объектов XmlHttpRequest после перехода браузера на другую страницу?

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