ie7 ведет себя так, как будто в jquery для async установлено значение false - PullRequest
0 голосов
/ 03 августа 2011

Я работаю над проектом (таким же, как вчера :)), который включает в себя много фоновой загрузки ajax, чтобы поддерживать страницу обновленной.Моя проблема в том, что ie7 ведет себя так, как будто async имеет значение false - он почти зависает при вызове ajax-запроса.Сначала это было терпимо, но теперь, когда скрипт стал более сложным, он зависает примерно на 6 секунд, размораживается на 1 или 2, а затем продолжает повторять это.

Я сузил его до этого повторяющегосяФоновый вызов (он работает нормально, когда я его не повторяю), который вызывается каждые 5 секунд:

var currentPerformance=0;
function updatePerformanceCodes(){
    $.post("performanceCodes.php",{id:performances[currentPerformance], timestamp: updates[performances[currentPerformance]]},
        function(data){
            if(data!="."){
                if(performanceCodes[performances[currentPerformance]]==""){
                    performanceCodes[performances[currentPerformance]]+=data.split('?')[0];
                    }
                else{
                    performanceCodes[performances[currentPerformance]]+=","+data.split('?')[0];
                    }
                }
            drawCurrentSeats();
        $.post("familyCodes.php",{id:performances[currentPerformance], timestamp: updates[performances[currentPerformance]]},
        function(data){
            if(data!="."){
                if(familyCodes[performances[currentPerformance]]==""){
                    familyCodes[performances[currentPerformance]]+=data.split('?')[0];
                    }
                else{
                    familyCodes[performances[currentPerformance]]+=","+data.split('?')[0];
                    }
                updates[performances[currentPerformance]]=data.split('?')[1];
                }
            drawCurrentFamilies();
          });
        if(currentPerformance<performances.length-1){
            currentPerformance++;
            updatePerformanceCodes();
            }
        else{
            currentPerformance=0;
            }
        });
    }

Я прочитал, то есть иногда возникают проблемы с кэшированием, и использование post можетэто, но это, похоже, не помогло.У меня также есть много других компонентов AJAX на странице, которые прекрасно работают, даже когда 5 или 6 вызываются одновременно, что делает это еще более запутанным.

Может кто-нибудь придумать, каким образом яможно исправить этот код, чтобы ie7 не зависал во время работы?

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