2012-04-02 5 views
1

マップがロードされているか「アイドル」状態のときにgmaps4_railsで動作するJavascriptコールバックを取得できません。Gmaps4railsのコールバックが正常に動作しない場合

ウィキこの他に基づいて、だから私は、これは、このビューでのアラートのすべてを発射するだろうと思ったDynamically load Google Maps Markers with gmaps4rails質問:

<%= gmaps(:map_options => {:detect_location => true, 
          :center_on_user => true, 
          :auto_zoom => true, 
          :zoom => 12, 
          :auto_adjust => false}, 
      :markers => {:data => @json, 
         :options => {:processsing => "@json", 
            :list_container => "markers_list", 
            :do_clustering => true 
                 } }) %> 
<ul id="markers_list"> </ul> 

<script type="text/javascript" charset="utf-8"> 
    alert("About to register callback"); 
    Gmaps.map.callback = function() { 
    alert("Map Loaded Callback Reached"); 
    } 

    function gmaps4rails_callback() { 
    alert("gmaps4_rails callback"); 
    } 
</script> 

<%= yield :scripts %> 

代わりに、私は唯一の「コールバックを登録しよう」という警告を取得します。他の機能は決して呼び出されないようです。私はネームスペースについて何かを誤解している気がしますが、洞察が得られるでしょう - マップを移動したときにJSONエンドポイントから更新するように設定しようとしていますが、これ以上の幸運はありません私がコールバックを引き起こすことができることを確認する最初のステップ。

マップは正常に表示され、私の初期データはすべてそこにあることに注意してください。なぜドキュメントhereあたりとして

答えて

1

、あなたはcontent_for :scripts

でjsのコードをラップする必要がありますか?

gmaps4rails jsコードを最初にロードする必要があるためです。

+0

複数のGmaps.map.callbackを使用できますか? – kidbrax

+0

@kidbrax:マップごとに1つのコールバックしかありません。 'Gmap.map'は一つのマップです – apneadiving

+0

ありがとう。あなたが見て気にするなら、関連する質問をhttp://stackoverflow.com/questions/14144350/gmaps4rails-callback-not-firingで投稿しました。 – kidbrax

関連する問題