我想将地理位置添加到我的移动版本中
地图位于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
尝试了Geolocation示例,在http://www.w3schools.com/html/html5_geolocation.asp
尝试了W3 HTML5 Geolocation方法。但我的地图通过jquery加载,不使用
map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
像所有的例子一样。
如果我用第46行中的$替换,我可以让地理定位工作 document.getElementById但我的传感器/制造商都没有 显示。
有谁知道如何让我的地理定位工作 标记/数据仍在加载?
答案 0 :(得分:2)
找到答案!我使用了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文件中,如果有人想要做同样的事情。