1

多くの場合、パーシャルでは、HTML (または ERB または HAML) と Javascript が 1 つのファイルにあるため、メイン ファイルにこれらのパーシャルが含まれていると、HTML が Javascript コードと混在します。

ただし、高速なページ コンテンツ表示のためには、すべての Javascropt コードを HTML ファイルの最後に配置する必要があると言われています。この場合、これを実現するための適切または標準的な方法はありますか? おそらく、1 つのパーシャルを HTML として使用し、1 つのパーシャルを Javascript として使用し、2 つの異なるパーシャルを含めます (HTML を正しい場所として、Javascript をファイルの末尾近くに配置しますか?)

(これは、Javascript コード ブロックが HTML ファイルの末尾になく、jQuery の $(document).ready(function() {...}) を使用している場合、ページの表示が遅くなりますか? に関連しています。 )

4

1 に答える 1

2

レイアウトファイルに、Javascriptをロードできるフッターを配置できます(通常、分析など、早期にロードする必要のないもの)。content_for次に、Javascriptパーシャルを含むビューでを定義します。その結果、そのJavascriptがページの最後に配置されます。

レイアウト:

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

あなたの見解/パリタルで:

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

また

<% content_for :footer %>
  <%= render :partial => "path_to_some_javascript" %>
<% end %>
于 2010-07-20T23:33:38.987 に答える