【发布时间】:2013-08-23 23:20:36
【问题描述】:
我正在尝试在网站中获取自定义谷歌地图 API,但问题是地图未显示完整,仅显示地图的一部分。
给出下面的代码:
js代码:
$(document).ready(function(){
var map=null;
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(24.3573, 54.4636),
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var currCenter = map.getCenter();
google.maps.event.trigger(map, 'resize');
map.setCenter(currCenter);
map.setZoom(14);
var markerOptions = {
position: new google.maps.LatLng(24.3573, 54.4636),
map: map
};
var marker = new google.maps.Marker(markerOptions);
marker.setMap(map);
var infoWindowOptions = {
content: '<b>Compnay Name</b><br> Is Here!'
};
var infoWindow = new google.maps.InfoWindow(infoWindowOptions);
infoWindow.open(map, marker);
};
google.maps.event.addDomListener(window, 'load', initialize);
});
html代码:
<div class="container">
<h1>Location Map</h1>
<p></p>
<div id="map-canvas"></div>
</div>
css代码:
.container {width: 100%; height: 100%;}
.container #map-canvas {
width: 500px;
height: 250px;
margin: 0;
border: 1px solid rgb(225, 225, 225);}
.map h2{
font-size: 16px;
font-weight: bold;
padding: 20px 0 6px 0;}
请告诉我我做错了什么?
我听说'google.maps.event.trigger(map, 'resize');'通常可以解决问题,但在我的代码中它似乎不起作用,也许我没有放在正确的地方..请帮助。
谢谢。
【问题讨论】:
-
试着把你的
google.maps.event.trigger(map, 'resize')放在你最后一个动作的后面,你正在处理地图。也许在google.maps.event.addDomListener(window, 'load', initialize);之后 -
您发布的代码对我有用,live example
-
Bipin,告诉我你的页面网址。我们会检查的。
-
地图作为独立的 div 可以正常工作,我拥有的是隐藏的 div(单击位置地图链接时页面会滑动)
标签: google-maps google-maps-api-3