【发布时间】:2014-07-03 11:36:45
【问题描述】:
我正在使用jquery-ui-map 插件向我的应用程序添加地图。
问题是当我加载地图时它只加载了一半(见下面的 PS)。
(我发现如果我打开 Chrome 开发工具,它会完全加载地图)。
这就是我创建地图的方式:
HTML:
<div>
<div id="map_canvas"></div>
</div>
JavaScript:
$(window).load(function() {
var mainNode = document.getElementById("map_canvas");
var height = $(window).height() - $("#headerDiv").height() - $("#footerDiv").height();
var width = window.screen.width;
mainNode.style.height = height + "px";
mainNode.style.width = width + "px";
});
$(function() {
//Create map and zoom to corrent position
$('#map_canvas').gmap().bind('init', function(event, map) {
zoomToCurrentPosition();
});
});
function zoomToCurrentPosition() {
$('#map_canvas').gmap('getCurrentPosition', function(position, status) {
if (status === 'OK') {
var clientPosition = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
if (currentPositionMarker !== undefined) {
currentPositionMarker.setMap(null);
}
currentPositionMarker = new google.maps.Marker({
'position': clientPosition,
'bounds': true
});
$('#map_canvas').gmap('addMarker', currentPositionMarker);
$('#map_canvas').gmap({
'center': clientPosition,
'zoom': 7
});
$('#map_canvas').gmap('get', 'map').panTo(clientPosition);
}
});
}
【问题讨论】:
-
您的“map_canvas_2” div 没有高度。
-
对不起,我有这个函数会根据屏幕高度添加高度: $(window).load(function() { var mainNode = document.getElementById("map_canvas_2"); var height = $(window).height() - $("#headerDiv").height() - $("#footerDiv").height(); var width = window.screen.width; mainNode.style.height = height + "px"; mainNode.style.width = width + "px"; });
-
我更新了问题并添加了我使用的 HTML 代码
标签: javascript jquery google-maps google-maps-api-3