RailsアプリケーションにPjaxとGoogle Mapを実装したいのですが、JavaScriptコードの再読み込みに問題があります。Pjaxと特定のページでJavaScriptを再読み込み
マイレイアウト/ application.html.erbは、このようなものです:
<div id="map" style="width: 100%; height: 300px;"></div>
<% content_for(:after_js) do %>
<%= javascript_tag do %>
$(document).on('ready', function() {
handler = Gmaps.build('Google');
handler.buildMap({ internal: { id: 'map' } }, function(){
markers = handler.addMarkers(<%= raw @markers.to_json %>);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
});
})
<% end %>
<% end %>
@markers:
<body>
<%= render 'shared/navbar' %>
<%= render 'shared/flashes' %>
<div id="pjax-container">
<%= yield %>
</div>
<%= render 'shared/footer' %>
<%= javascript_include_tag "https://maps.google.com/maps/api/js?key=******************************" %>
<%= javascript_include_tag "https://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclustererplus/2.0.14/src/markerclusterer_packed.js" %>
<%= javascript_include_tag "application" %>
<%= yield(:after_js) %>
</body>
と私のマップリスト/ index.html.erbあるファイルは、このようなものですリストにリンクされたマーカーの配列です。これはListingsコントローラで定義されているので、このjavascriptコードを移動するのは難しいです。
このファイルのJavaScriptコードは、このページをリロードすると動作し、ページを変更すると消えません。
私の質問は: Pjaxシステムで特定のページにいくつかのルビー情報を含むJavaScriptコードを呼び出すことは可能ですか?
これは本当にその方法を説明していません。あなたは詳しく説明できますか? –
実際には、私はもっと難しいことをしました(リンクとリモートで関数を呼び出す:true)が、これはより良い(と私は今、pjaxのより良い理解を持っている)) –
@hugohowchoong;)ええ.. PJAX isページを読み込まずに動的コンテンツを表示するための最高のプラグイン.. :)コーディングを楽しむ;) – Kannan