2015-02-23 1 views
2

Что будет разница between-Загрузка HTML или файл JavaScript в качестве источника IFrame

  • загрузки файла JavaScript, который строит весь HTML (от создания головы, метки тела для отдыха) и других сотрудников, связанных с программой ,
  • загрузка html, который содержит скелет (например, голова, теги тела) и JavaScript, который создает остальную часть страницы и других сотрудников.

мне нужно принять наилучший подход между этими двумя для заполнения в IFRAME:

ifrm.src="http://somewhereintheuniverse.com/test.js" 

или

ifrm.src="http://somewhereintheuniverse.com/widget.html" 

ли механизм кэширования ресурсов для обоих применяется то же самое? Будет оценено предложение, описывающее плюсы и минусы обоих подходов.

+0

iframe src, проанализированный браузером как тип содержимого html/htm, вы должны пройти через html-контент по серверу в браузер. js или html расширение не имеет значения, если вы задали заголовок типа контента с расширением –

+0

, вы не можете установить iframe.src в url скрипта и запустить его, он просто отобразит все сжатые ... – dandavis

ответ

0

Это быстрее, чтобы иметь весь HTML в одном HTML файл как построение HTML, или, вернее, изменения DOM с JavaScript, медленно по ряду причин, см But why's the browser DOM still so slow after 10 years of effort?

Так что, если это возможно, я хотел бы выбрать для возможности загрузки всего html в один файл, а не для создания его с помощью JavaScript, если вы просто хотите ускорить работу. JavaScript хорош в том, что он дает вам гибкость и может избавиться от дублированного кода в таких вещах, как списки. Но лучше было бы избавиться от дублирования кода на стороне сервера и просто вернуть один html-файл.

Обратите внимание, что кеширование будет таким же. DOM-манипуляция будет самым большим замедлением.

+0

Мне нужно на самом деле модифицируйте DOM на определенных этапах. Если я создам html вместо js, я буду делать некоторые шаблоны на стороне клиента, и мне понадобится некоторая манипуляция DOM в этом случае –

+0

Конечно, в этом случае я все равно буду делать столько, сколько вы можете просто в html, чтобы ограничить количество манипуляций с DOM ты делаешь. Выполнение всего этого в JS будет медленнее, чем некоторые из них в JS – winhowes

+0

. Я нашел эту ссылку: http://yuiblog.com/blog/2010/07/12/mobile-browser-cache-limits-revisited/, где сказано «Попробуйте ограничить HTML-страницы до 25,6 КБ или менее, если вы хотите, чтобы они были кэшированы». Но для CSS и JS ограничение составляет 1 МБ. Итак, как вы думаете, кеширование все равно будет таким же? –

Смежные вопросы