Нужен совет по оптимизации сайта... jQuery

R
На сайте с 03.08.2012
Offline
131
682

Здравствуйте! Делаю большой проект (по моим меркам). На сайте планирую по полному использовать jQuery. (Очень многие элементы открываються в модальном окне).

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

Как я понимаю в случае php нагрузка идет на сервер, можно купить отличный сервер и будет тянуть хорошо. А в случае javascript и jQuery нагрузка ложиться на клиента, и как я понимаю, у кого комп слабенький сайт может глючить.

Поэтому есть несколько вопросов:

1) Большая возможность того, что будет глючить браузеры у пользователей, если будет много jquery кода... много открываться модальных окон и т.д. Или чтобы начало глючить, нужно написать 100 скриптов нагруженых. Поэтому беспокоиться не очем. И браузеры будут тянуть нормально. (понимаю что на этот вопрос тяжело ответить, все зависит от скриптов и т.п., но всеже...)

2) Как лучше сделать модальные окна:

С помощью html+php генерировать их уже на странице, потом с помощью jquery показывать их (.show()) или же лучше, сделать 1 модальное окно, далее туда уже подгружать с помощью jquery различную информацию. (думаю вы поняли о чем я)

Да, конечнно, я обьяснять не умею( Но все же надеюсь на помощь и советы. Ведь для меня ОЧЕНЬ важно, чтобы в дальнейшем сайт работал нормально, без различных глюков и больших нагрузок на сервер.

Спасибо!

дани мапов
На сайте с 06.09.2012
Offline
204
#1

http://habrahabr.ru/post/111195/

http://habrahabr.ru/post/103174/

Ничто не будет глючить, если будете следовать подобным рекомендациям.

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
R
На сайте с 03.08.2012
Offline
131
#2
2) Как лучше сделать модальные окна:
С помощью html+php генерировать их уже на странице, потом с помощью jquery показывать их (.show()) или же лучше, сделать 1 модальное окно, далее туда уже подгружать с помощью jquery различную информацию. (думаю вы поняли о чем я)

А насчет этого, что скажите?

Оптимизайка
На сайте с 11.03.2012
Offline
396
#3

Это зависит от того, насколько часто будут использоваться все диалоговые окна и информации, которую Вы там собираетесь размещать.

Например, я в случае окон с подтверждением действий пользователей и подобных информационных сообщений делаю по варианту 1 (генерация прям в странице с display:none), а если окна содержат какую-нибудь информацию, за которой надо обращаться в БД и они используются редко - вариант 2 (динамическая подгрузка).

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
C
На сайте с 04.02.2005
Offline
277
#4

2. Это все зависит от функциональности.

Сколько всего модальных окон и из назначение?

Генерировать html контент js-скриптом. Определенный плюс - не будет мусорного кода на странице.

При большом обилии модальных окон - получать их структуру аяксом

Если в модальных окнах подразумеваются формы, то минус - например, в метрике невозможно отследить взаимодействие с формой.

R
На сайте с 03.08.2012
Offline
131
#5

Модальные окна используються по разному. В большенстве случаев в модальном окне есть форма, а далее эта форма отправляеться ajax`сом.

Поэтому это модальное окно имеет не большой html код. Но она также имеет javascript, который обрабатывает форму.

И поэтому если сразу статически генерировать 10 модальных окон, мне кажеться не очень хорошо получаеться, что вроде небольшие 10 форм, но во первых засоряет сильно код, а во вторых ещё получаеться 10 javascript`ов, которые по коду ещё больше форм. В итоге, пользователь на сайте, грузит много лишнего кода каждый раз. А что мне кажеться самое плохое, из-за тогого подхода сильно увеличиваеться DOM дерево, из-за чего (как я думаю) сильно увеличиваеться нагрузка от jQuery. Поэтому 1 вариант не очень с этой стораны:(

Второй вариант плох тем что, во первых будут идти много запросов к серверу, а во вторых пользователю нужно будет ждать некоторое время, пока ajax подгрузит контент.

Также 1 вариант (как по мне) более просто в реализации. Но это не важно...

C
На сайте с 04.02.2005
Offline
277
#6
будут идти много запросов к серверу,

Сильно сомневаюсь

Например

Код шаблона (1 вариант):

{content}

<div id=form>

{form}

</div>

Чтобы получить код формы, нужно выполнить некие действия, обратиться к шаблону, к базе и прочее. ВСЕГДА.

Код шаблона (2-й вариант):

{content}

<div id=form>

</div>

К шаблону формы обращение к серверу происходит ТОЛЬКО по запросу

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий