Hoe geef ik de locatie van de gebruiker weer met een markering in gmaps4rails?

Ik heb geprobeerd om een ​​aangepast gebruik van gmaps4rails running te krijgen, en ik heb de code ingesteld om mijn string van json-coördinaten op de kaart weer te geven, en het midden op gebruiker IS werkt, ik kan inzoomen op mijn locatie vanuit huis, werk en mijn telefoon. Ik kan de JS niet juist krijgen om een ​​'Im here'-knop op de kaart weer te geven zodra toestemming is gegeven.

hier is de code die ik gebruik voor de kaart van gmaps4rails:

<%= gmaps(:map_options => {:detect_location => true, :center_on_user => true, :auto_zoom => false, :zoom => 12, :auto_adjust => true}, :markers => {:data => @json} ) %>

Bedankt voor alle hulp!

EDIT Dec.6 na antwoord:

Ik voeg de code voor het terugbellen als volgt toe:

        <script type="text/javascript" charset="utf-8">
         Gmaps.map.callback = function() {
          Gmaps.map.createMarker({Lat: Gmaps.map.userLocation.lat(),
                                  Lng: Gmaps.map.userLocation.lng(), 
                                  rich_marker: null, 
                                  marker_picture: "http://gmaps-utility-library.googlecode.com/svn/trunk/markerclusterer/1.0/images/heart30.png"
                   })
                }
        </script>

en krijgt nog steeds geen reactie op de kaart. Is dit een probleem met mijn js-codering? Ik ben nog geen prof.

bedankt!

3
Wat was de definitieve code hiervoor? Ik probeer iets vergelijkbaars te doen om een ​​markering toe te voegen met de huidige locatie.
toegevoegd de auteur locoboy, de bron
Sorry, ik begrijp uw vraag niet echt
toegevoegd de auteur apneadiving, de bron
ok gotcha, vergeet niet het antwoord te accepteren (nieuwe kennisgeving van de gebruiker)
toegevoegd de auteur apneadiving, de bron
Ik denk dat ik begrijp waarom: userLocation is niet beschikbaar wanneer de callback wordt geactiveerd omdat deze een onvoorspelbare vertraging heeft. Gebruik setInterval om door te lussen totdat het gevuld is (gebruik natuurlijk clearInterval eenmaal gedaan)
toegevoegd de auteur apneadiving, de bron
@apneadiving THanks voor het lezen ervan, ik zal herformuleren: een marker proberen weer te geven voor de Gmaps4rails.map.userLocation-gegevens. Momenteel zal de kaart zich centreren op de gebruiker, maar wordt er geen markering weergegeven. dat wil zeggen: zoals bij een winkelcentrum/luchthaven de pijl "U bent hier". hoop dat dat helpt?
toegevoegd de auteur keade, de bron
de vraag bijgewerkt met de huidige code en niet zeker wat er nu aan de hand is. heel erg bedankt om dit te verdragen!
toegevoegd de auteur keade, de bron

1 antwoord

Je kan dit doen:

Gmaps.map.createMarker({Lat: Gmaps.map.userLocation.lat(),
                        Lng: Gmaps.map.userLocation.lng(), 
                        rich_marker: null, 
                        marker_picture: ""
                       })

in de callback.


Merk op dat je de url van je gewenste marker kunt passeren.

Trouwens, je zou een probleem moeten maken met github als je denkt dat dit een handige functie is.

2
toegevoegd
zoals je voelt! :)
toegevoegd de auteur apneadiving, de bron
Zal dit een kans geven! Bedankt! en om uw github-problemenlijst op te slaan, zullen mensen eerst zien of mensen deze Q doorgeven voordat ze een aanbieding doen?
toegevoegd de auteur keade, de bron