Javascript 使用谷歌地图api时看不到实际地图
Javascript 使用谷歌地图api时看不到实际地图,javascript,google-maps-api-3,markerclusterer,Javascript,Google Maps Api 3,Markerclusterer,<!DOCTYPE> 身体{ 保证金:0; 填充:10px 20px 20px; 字体系列:Arial; 字体大小:16px; } #地图容器{ 填充:6px; 边框宽度:1px; 边框样式:实心; 边框颜色:#ccc#ccc#999#ccc; -webkit盒阴影:rgba(64,64,64,0.5)0 2px 5px; -moz盒阴影:rgba(64,64,64,0.5)0 2px 5px; 盒影:rgba(64,64,64,0.1)0 2px 5px; 宽度:100%; }
<!DOCTYPE>
身体{
保证金:0;
填充:10px 20px 20px;
字体系列:Arial;
字体大小:16px;
}
#地图容器{
填充:6px;
边框宽度:1px;
边框样式:实心;
边框颜色:#ccc#ccc#999#ccc;
-webkit盒阴影:rgba(64,64,64,0.5)0 2px 5px;
-moz盒阴影:rgba(64,64,64,0.5)0 2px 5px;
盒影:rgba(64,64,64,0.1)0 2px 5px;
宽度:100%;
}
#地图{
宽度:100%;
身高:98%;
}
函数初始化(){
var center=newgoogle.maps.LatLng(48.13333,11.566667);
var map=new google.maps.map(document.getElementById('map'){
缩放:3,
中心:中心,,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var标记=[];
对于(变量i=0;i<100;i++){
var dataPhoto=data.weblandmarks[i];
var latLng=新的google.maps.latLng(dataPhoto.latitude,
经度);
var marker=new google.maps.marker({
职位:latLng
});
标记器。推(标记器);
}
var markerCluster=新的MarkerClusterer(地图、标记);
}
<!DOCTYPE>
<!DOCTYPE>
我正在使用带有markercluster的maps api来显示许多地方
我可以看到缩放栏,也可以看到markercluster生成的簇,但看不到实际的地图图像
为什么?你可以试着像这样制作地图:
<!DOCTYPE>
<style type="text/css">
body {
margin: 0;
padding: 10px 20px 20px;
font-family: Arial;
font-size: 16px;
}
#map-container {
padding: 6px;
border-width: 1px;
border-style: solid;
border-color: #ccc #ccc #999 #ccc;
-webkit-box-shadow: rgba(64, 64, 64, 0.5) 0 2px 5px;
-moz-box-shadow: rgba(64, 64, 64, 0.5) 0 2px 5px;
box-shadow: rgba(64, 64, 64, 0.1) 0 2px 5px;
width: 100%;
}
#map {
width: 100%;
height: 98%;
}
</style>
<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" src="data/weblandmark.json"></script>
<script type="text/javascript" src="js/markerclusterer.js"></script>
<script type="text/javascript">
function initialize() {
var center = new google.maps.LatLng(48.133333, 11.566667);
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 3,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var markers = [];
for (var i = 0; i < 100; i++) {
var dataPhoto = data.weblandmarks[i];
var latLng = new google.maps.LatLng(dataPhoto.latitude,
dataPhoto.longitude);
var marker = new google.maps.Marker({
position: latLng
});
markers.push(marker);
}
var markerCluster = new MarkerClusterer (map, markers);
}
</script>
这很挑剔,但如果您以后必须向地图添加大量信息(加载后标记/侦听器/缩放),则使用地图会更容易。您可以尝试这样制作地图:
<!DOCTYPE>
<style type="text/css">
body {
margin: 0;
padding: 10px 20px 20px;
font-family: Arial;
font-size: 16px;
}
#map-container {
padding: 6px;
border-width: 1px;
border-style: solid;
border-color: #ccc #ccc #999 #ccc;
-webkit-box-shadow: rgba(64, 64, 64, 0.5) 0 2px 5px;
-moz-box-shadow: rgba(64, 64, 64, 0.5) 0 2px 5px;
box-shadow: rgba(64, 64, 64, 0.1) 0 2px 5px;
width: 100%;
}
#map {
width: 100%;
height: 98%;
}
</style>
<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" src="data/weblandmark.json"></script>
<script type="text/javascript" src="js/markerclusterer.js"></script>
<script type="text/javascript">
function initialize() {
var center = new google.maps.LatLng(48.133333, 11.566667);
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 3,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var markers = [];
for (var i = 0; i < 100; i++) {
var dataPhoto = data.weblandmarks[i];
var latLng = new google.maps.LatLng(dataPhoto.latitude,
dataPhoto.longitude);
var marker = new google.maps.Marker({
position: latLng
});
markers.push(marker);
}
var markerCluster = new MarkerClusterer (map, markers);
}
</script>
这很挑剔,但如果您以后必须向地图添加大量信息(加载后的标记/侦听器/缩放),则使用地图会容易得多。尝试添加以下CSS:
<!DOCTYPE>
//The options for the google map
var mapOptions = {
zoom: 3,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP //Or whatever you want
};
var map = new google.maps.Map(document.getElementById('#map'), mapOptions);
尝试添加以下CSS:
<!DOCTYPE>
//The options for the google map
var mapOptions = {
zoom: 3,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP //Or whatever you want
};
var map = new google.maps.Map(document.getElementById('#map'), mapOptions);
不,这不是问题。谷歌地图会出现,但里面没有真实的街道图像。如果试图同时进行许多更改,地图会生成得很奇怪,这就是为什么在地图之前做出所有选择有时会清除这些问题的原因。不,这不是问题。谷歌地图会出现,但是,只有在没有真实街道图像的情况下,地图才会产生奇怪的效果,如果有太多的改变试图一次完成,这就是为什么在地图清除这些问题之前做出所有的选择——只需将“地图”的宽度设置为100%,将“高度”设置为“自动”。只需将“地图”的宽度设置为100%,将“高度”设置为“自动”。