Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: оптимизация dom
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » оптимизация dom

Страниц (1): [1]
 

1. SAD - 20 Ноября, 2010 - 12:51:04 - перейти к сообщению
Есть очень большая проблема при построении больших по размерам таблиц в которых более 10k строк и 8-10 столбцов.
Идет запрос с помощью json, вытягиваются записи и в цикле for (i = 0; .....) идет запись в переменную(построение первой строки таблицы) - конкатанация следующей строки и т.д., потом после окончания цикла идет вставка в таблицу. уходит многовато времени для построения таблицы. есть ли способ оптимизации построения?
2. Slavenin - 20 Ноября, 2010 - 15:54:07 - перейти к сообщению
прежде всего оптимизировать sql запрос и убрать из него все лишнее. Попробовать например проделывать это на стороне сервера средствами php, или же вытаскивать не все записи одновременно а первые n строк, а снизу выводить ссылки на следующие страницы, аналогично как сделаны страницы на форумах.
3. SAD - 20 Ноября, 2010 - 15:58:45 - перейти к сообщению
выбирается только нужное. на стороне сервера не может быть и речи. вытаскивать нужно все записи сразу
4. Slavenin - 20 Ноября, 2010 - 17:15:11 - перейти к сообщению
а немного поконкретней задачу тогда можно сформулировать? почему нельзя использовать php? и для чего на странице нужно такое количество строк. Попробуй использовать ajax, по крайней мере субъективное время ожидания сократится так как будет видна динамика построения страницы.
5. SAD - 20 Ноября, 2010 - 18:02:27 - перейти к сообщению
будет производиться работа со строками, конкретней сказать с данными. потому что пишется интерфейс, а не сайт. нельзя на стороне сервера, потому что нежелательно, только прием и отдача данных.
6. JustUserR - 20 Ноября, 2010 - 18:58:28 - перейти к сообщению
SAD пишет:
Есть очень большая проблема при построении больших по размерам таблиц в которых более 10k строк и 8-10 столбцов
Для обеспечения оптимизации системы доступа к компонентам страницы возможно использование встроенных функций DOM-модели для контроля минимальных элементов в задаваемом контейнере - дело в том что такой подход обеспечивает моификацию структуры общего элемента без проведения анализа корректности представляющего его HTML-кода и выполненя привеения во внутренней представление
7. Champion - 20 Ноября, 2010 - 20:02:01 - перейти к сообщению
Вообще это большой объем данных, так что быстрого отображения в любом случае не получится.
Если данные выводятся именно так
SAD пишет:
после окончания цикла идет вставка в таблицу
, а не происходит изменение содержимого отображаемой таблицы после каждой итерации, то тервый вариант как раз предпочтительнее. Манипуляции с домом - формирование всей таблицы именно не текстом, а именно как объекта с пом. createElement и appendChild - сомневаюсь, что помогут. Можно конечно поэксперементировать, но толку мало будет.

Может быть переосмыслить идею отправления такого большого объема данных? Может быть реализовать вариант с их порционной подгрузкой?
8. SAD - 20 Ноября, 2010 - 20:32:34 - перейти к сообщению
Champion пишет:
Может быть переосмыслить идею отправления такого большого объема данных? Может быть реализовать вариант с их порционной подгрузкой?

К сожалению порции не нужны. В чем прикол, интерфейс пишется только под FF,но он просто не может вынести такую нагрузку. Пробовал в Chrome - он пошустрее в этом деле))
Видимо надо совещаться с начальством по поводу пересмотра вывода.
9. JustUserR - 21 Ноября, 2010 - 21:10:50 - перейти к сообщению
SAD пишет:
В чем прикол, интерфейс пишется только под FF,но он просто не может вынести такую нагрузк
Оптимальным вариантом средства исполнения интерфейса требуеющего значительных вычислительных мощностей для отображения таблиц с информационными полями - является использование браузера Internet explorer позволяющего обеспечивать непосредственную работу с представление данных в dataset-элементах
10. SAD - 21 Ноября, 2010 - 21:15:56 - перейти к сообщению
JustUserR пишет:
является использование браузера Internet explorer

нет, нет и еще раз нет))
все пишется только под FF. Используется очень много плагинов под jquery, которые работает корректно только в нем. Проблему нужно решить под FF

 

Powered by ExBB FM 1.0 RC1