Как ускорить jquery mobile/phonegap?
У меня есть небольшое веб-приложение. Семь страниц, 3,6 КБ index.html и 855,5 КБ всего. Единственное, что у меня есть, это база данных (~ 500 кб) в Javascript со многими строками вроде:
$.data(db,'Aarstraße',['34236:1','34246:2','34270:4','34290:6',...]);
Я тестировал его на iPod/iPhone и Android (HTC Magic), и он очень медленный:
Запуск
- iPhone: 14 секунд
- Android: 21 секунда
Простой переход страницы (слайд)
- iPhone: 3-4 секунды
- Android: 4-6 секунд
Как я могу сделать это быстро?
Я уже удалил тэг .
Обновление
Я удаляю базу данных, оставляя итоговую сумму 444,7 КБ. Теперь он работает быстрее на Android. Вокруг же, как у одного iPhone. Он все еще чувствует себя очень медленно.
Обновление 2
После этот вопрос я перешел на последнюю jquery mobile build. Он улучшил переходы страниц для медленных устройств Android до ~ 2 секунд на переход. Выпуск версии 1.1 будет в середине/конце февраля.
Ответы
Ответ 1
Есть несколько вещей, которые вы можете сделать:
Как вы уже упоминали, вы переместили базу данных из уравнения, которое, вероятно, занимало большую часть времени при запуске.
Ответ 2
Что вы делаете с jQuery-mobile? Производительность очень плохая, вы никогда не должны называть ее более значительными элементами. Подробнее см. обсуждение jQuery-mobile. Он выполняет очень большое количество операций поиска DOM, потому что он работает, изменяя дерево DOM. Что касается моих тестов, он работает слишком медленно даже в настольном браузере.
Ответ 3
Попробуйте без переходов. Даже с jQuery 1.1 переходы на страницы могут быть очень быстрыми и медленными на iPhone.
Чтобы перетаскивать переходы по страницам по всему миру, просто добавьте следующее в jqm.glocal.config.js
$(document).bind("mobileinit", function(){
$.mobile.defaultPageTransition="none"
});