0

今、私の application.html.erb にこの JQuery がありますが、
これは私の Web サイトのすべての html で見られます。だから私はこれを入れたいrefresh_post.jsで作成された/assets/javascripts

しかし、ご存知のように、application.html.erb はディレクトリ内のすべての JavaScript ファイルを呼び出します。たくさん使ってこれ入れてるから

<%= javascript_include_tag "application" %>

ユーザーがログインしている場合にのみ、この JQuery を呼び出すにはどうすればよいですか。また、refresh_post.jsユーザーがログインしない限りロードされないようにするには、どこで作成すればよいですか? これを行う目的はSEOです。JavaScript を HTML に入れたくありません。

ビュー/application.html.erb

<% if current_user %>
    <%= javascript_tag do %>
        jQuery(document).ready(function () {
            refreshPartialPost();
            setInterval(refreshPartialPost, 1000)
        });


        function refreshPartialPost() {
          $.ajax({
            url: "/posts/refresh_partial",
            type: "GET",
            dataType: "script",
          });
        }
    <% end %>
<% end %>
4

2 に答える 2

0

これを見てください。これはCSS用ですが、jsにも同じことが適用できます

HTH

于 2013-01-09T16:23:43.577 に答える
0

applicationあなたのレイアウトのためにこれはどうですか:

<%= javascript_include_tag 'application' %>
<% if current_user %>
<%= javascript_include_tag 'refresh_post' %>
<% end %>
于 2013-01-09T15:25:01.117 に答える