Как отобразить местоположение пользователя маркером в gmaps4rails?

Я пытался настроить пользовательское использование gmaps4rails, и у меня есть код, установленный для отображения моей строки координат json на карте, и центр пользователя работает, я могу увеличить свое местоположение из дома, работы и моего Телефон. Я просто не могу получить право js для отображения кнопки «Я здесь» на карте после получения разрешения.

вот код, который я использую для карты от gmaps4rails:

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

Спасибо за любую помощь!

РЕДАКТИРОВАТЬ 6 декабря после ответа:

Я добавляю код обратного вызова следующим образом:

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

и до сих пор не получил ответа на карту. Это проблема с моим кодированием js? Я еще не профи.

Благодарность!


person keade    schedule 06.12.2011    source источник
comment
Извините, я не очень понимаю ваш вопрос   -  person apneadiving    schedule 06.12.2011
comment
@apneadiving Спасибо за прочтение, я перефразирую: Пытаюсь отобразить маркер для данных Gmaps4rails.map.userLocation. В настоящее время карта будет сосредоточена на пользователе, но не будет отображать маркер. то есть: как в торговом центре/аэропорту стрелка «Вы здесь». надеюсь, это поможет?   -  person keade    schedule 06.12.2011
comment
хорошо, не забудьте принять ответ (уведомление для новых пользователей)   -  person apneadiving    schedule 07.12.2011
comment
обновил вопрос с текущим кодом и не уверен, что сейчас происходит. большое спасибо, что вытерпели это!   -  person keade    schedule 07.12.2011
comment
Я думаю, что понимаю, почему: userLocation недоступен, когда запускается обратный вызов, потому что он имеет непредсказуемую задержку. Вы должны использовать setInterval для цикла, пока он не будет заполнен (конечно, используйте clearInterval после завершения)   -  person apneadiving    schedule 07.12.2011
comment
Какой был окончательный код для этого? Я пытаюсь сделать что-то подобное, чтобы добавить маркер с текущим местоположением.   -  person locoboy    schedule 24.11.2012


Ответы (1)


Ты можешь это сделать:

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

в обратном вызове.


Обратите внимание, что вы можете передать URL-адрес желаемого маркера.

Кстати, вам следует создать задачу на github, если вы считаете, что это полезная функция.

person apneadiving    schedule 06.12.2011
comment
Дам этому шанс! Спасибо! и чтобы сохранить список проблем на github, увидят ли люди трафик этого вопроса, прежде чем перечислять? - person keade; 07.12.2011