初始化地图后,我正在尝试在地图上绘制标记。但是我需要知道中心点 lng lats。
我已经尝试使用这两种方法,但是在 chrome js 中出现“未捕获 RangeError:超出最大调用堆栈大小”;
$('#map_canvas').gmap('get', 'map').getCenter()); and also
$('#map_canvas').gmap('option', 'center');
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript" src="jquery-ui-map-3.0-rc/ui/jquery.ui.map.js"></script>
<script type="text/javascript" src="jquery-ui-map-3.0-rc/ui/jquery.ui.map.extensions.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<script>
$('#map_page').live("pageshow", function() {
function add_markers() {
var location = $('#map_canvas').gmap('option', 'center');
$.getJSON( 'http://localhost/motherly/android/index.php/api/venues?lat=' + location.lat() + '&lng=' + location.lng(), function(data) {
console.log(data['response']);
$.each(data.response, function(i, marker) {
// console.log(marker.lat, marker.lng);
$('#map_canvas').gmap('addMarker', {
'position': new google.maps.LatLng(marker.lat, marker.lng),
'bounds': true
}).click(function() {
$('#map_canvas').gmap('openInfoWindow', { 'content': marker.name }, this);
});
});
});
}
function initialize(lat,lng) {
$('#map_canvas').gmap({'center' : new google.maps.LatLng(lat, lng), 'callback': function(){
add_markers();
}});
}
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position){
console.log(position);
initialize(position.coords.latitude,position.coords.longitude);
// google.maps.event
});
}
});