2012-04-02 16 views
1

Ich kann keinen Javascript-Callback für die Arbeit mit gmaps4_rails erhalten, wenn die Map geladen wurde oder sich im Status 'Idle' befindet.Probleme beim Aufruf von Gmaps4rails-Callbacks

auf der Wiki-basierte und die anderen SO Dynamically load Google Maps Markers with gmaps4rails Frage dachte ich, das alle Warnungen in dieser Ansicht feuern würde:

<%= 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 %> 

Statt nur ich die „über Callback registrieren“ erhalten Benachrichtigung. Die anderen Funktionen scheinen nie aufgerufen zu sein. Ich habe das Gefühl, dass ich etwas über den Namespace missverstand, aber jede Einsicht wäre willkommen - ich versuche, die Dinge von einem JSON-Endpunkt zu aktualisieren, während sich die Karte bewegt, aber ich habe nicht viel Glück, um darüber hinwegzukommen erster Schritt, um sicherzustellen, dass ich einen Rückruf auslösen kann.

Ich sollte beachten, die Karte erscheint normal und meine Ausgangsdaten sind alle da.

Antwort

1

Per Dokumentation here, müssen Sie die JS-Code in einem content_for :scripts

Warum wickeln?

weil Gmaps4rails Js-Code zuerst geladen werden sollte.

+0

Können Sie mehr als eine Gmaps.map.callback haben? – kidbrax

+0

@kidbrax: Es gibt nur einen Callback pro Karte. 'Gmap.map' ist eine Karte – apneadiving

+0

Danke. Ich habe eine verwandte Frage an http://stackoverflow.com/questions/14144350/gmaps4rails-callback-not-branding gepostet, wenn Sie einen Blick darauf werfen möchten. – kidbrax

Verwandte Themen