В Ruby on Rails, как сделать HTML частями в одном файле и Javascript в другом, чтобы они были последними? - PullRequest
1 голос
/ 21 июля 2010

Часто, частично, HTML (или ERB или HAML), а также Javascript находятся в одном файле, поэтому, когда основной файл включает в себя эти части, HTML-код будет смешан с кодом Javascript.

Однако сказано, что для быстрого отображения содержимого страницы весь код Javascropt должен быть помещен в конец HTML-файла.В этом случае существует ли правильный или стандартный способ сделать это?Возможно использование 1 частичного в качестве HTML, и 1 частичного в качестве Javascript, и включает в себя 2 различных частичных значения (HTML в качестве правильного места и Javascript в конце файла?)

(Это относится к Если блок кода Javascript находится не в конце HTML-файла, а использует jQuery $ (document) .ready (function () {...}), это замедлит отображение страницы? )

1 Ответ

2 голосов
/ 21 июля 2010

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

В макете:

<div id="footer">
  <%= yield :footer %>
</div>

В ваших представлениях / paritals:

<% content_for :footer %>
  <script type="text/javascript">
     // Some Javascript
  </script>
<% end %>

или

<% content_for :footer %>
  <%= render :partial => "path_to_some_javascript" %>
<% end %>
...