JQuery. Различная производительность на местном и через интернет

Я использую jQuery 1.4 для AJAX, MVC на стороне сервера. Все работает быстро на локальном компьютере. Таблицы с данными компилируются и отправляются в виде HTML-документов (я тестирую систему с большими таблицами размером более 100 КБ). Когда я загружаю ту же самую страницу через Интернет, все работает в 5-10 раз медленнее или просто ожидает.

Я проверил отладчик Forefox. AJAX отправил запрос и быстро получил данные (я вижу полученный ответ с правильными данными). Но затем он вставляет данные в DOM очень медленно, особенно медленно работает следующая инструкция: $("#oldtable"). ReplaceWith( newtable); и empty() Это работает очень медленно в IE6,8 (3 секунды на локальном компьютере и около 1 минуты через Интернет). Я удаляю данные из DOM как один объект и вставляю всю таблицу. Нет ошибок во вставленном HTML-коде.

Пожалуйста, не могли бы вы порекомендовать, как заставить его работать быстрее? Вероятно, я должен использовать другую библиотеку, такую ​​как Prototype. Я не могу понять следующее: Javascript выполняется на стороне клиента, данные уже загружены. Компьютер такой же. Почему время исполнения так сильно отличается? Спасибо Игорь

1 ответ

Здесь много вопросов:

1) Для быстрой вставки и удаления данных jquery иногда медленнее, чем прямые функции JavaScript, такие как.innerHTML. Хотя эти функции не являются частью стандарта, иногда их быстрое выполнение делает их привлекательными.

2) jquery - это javascript, поэтому он работает на клиенте. Если ваши файлы.js ДЕЙСТВИТЕЛЬНО не имеют большого размера, это не должно иметь большого значения, если вы загружаете их с локального хоста или с сервера в Интернете.

3) Функции AJAX - это запросы к серверу. Таким образом, это имеет большое значение, если вы загружаете большие объемы данных с локального хоста против сервера.

Другие вопросы по тегам