/ / Геолокация с Google Map V3 - javascript, jquery, google-maps-api-3, геолокация

Геоликация с Google Map V3 - javascript, jquery, google-maps-api-3, геолокация

Бих искал да добавя геолокация към мобилната версия на моя карта, разположена на http://alert.fcd.maricopa.gov/alert/Google/v3/mobile.html.

Картата ми се зарежда чрез този JavaScript файл http://alert.fcd.maricopa.gov/alert/Google/v3/js/mobilemap_v3.js, Ти ще забележите, че ред 46 от този файл е -

map = new google.maps.Map($("#map_canvas")[0],myOptions);

Опитах примера за геолокация в https://developers.google.com/maps/documentation/javascript/examples/map-geolocation и W3 HTML5 Geolocation метод на http://www.w3schools.com/html/html5_geolocation.asp, Но картата ми се зарежда чрез jquery и не се използва

map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);

като всички примери.

Мога да накарам геолокацията да работи, ако замени $ в ред 46 с document.getElementById, но след това никой от сензорите / създателите няма дисплея.

Някой знае ли как мога да получа геолокацията да работи с моя маркерите / данните все още се зареждат?

Отговори:

2 за отговор № 1

Намерих отговор на това! Използвах geolocationmarker-compiled.js (в http://code.google.com/p/google-maps-utility-library-v3/source/browse/trunk/geolocationmarker/src/geolocationmarker-compiled.js?r=379) и след това се добавя

var GeoMarker;

GeoMarker = new GeolocationMarker();
GeoMarker.setCircleOptions({
fillColor: "#808080"});

google.maps.event.addListenerOnce(GeoMarker, "position_changed", function() {
map.setCenter(this.getPosition());
map.fitBounds(this.getBounds());
});

google.maps.event.addListener(GeoMarker, "geolocation_error", function(e) {
alert("There was an error obtaining your position. Message: " + e.message);
});

GeoMarker.setMap(map);

и работи чудесно. Мобилната карта с работа с геолокация се намира на адрес http://alert.fcd.maricopa.gov/alert/Google/v3/mobile.html и кода за геолокация в файла mobilemap_v3.js, ако някой иска да направи същото.