我使用gmaps.js示例和文档尝试在谷歌地图上绘制路径,但它不会绘制任何内容。
我的代码在这里:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Show Vehicles</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script src="js/gmaps.js"></script>
<script type="text/javascript">
var map;
$(document).ready(function(){
map = new GMaps({
div: '#map',
lat: 53.361320,
lng: -6.505633,
click: function(e){
console.log(e);
}
});
path = [[53.361320,-6.505633],[53.361330,-6.505643],[53.361335,-6.505650],[53.361343,-6.505652],[53.361352,-6.505668],[53.361347,-6.505672],[53.361342,-6.505688],[53.361347,-6.505700],[53.361337,-6.505717],[53.361352,-6.505722],[53.361342,-6.505735],[53.361357,-6.505740],[53.361372,-6.505753],[53.361383,-6.505758]];
map.drawPolyline({
path: path,
strokeColor: '#131540',
strokeOpacity: 0.6,
strokeWeight: 6
});
});
</script>
</head>
<body>
<div id="map"></div>
</body>
</html>
请帮帮我
答案 0 :(得分:1)
您的代码实际上看起来是正确的(快速demo似乎表明它至少在我的浏览器上工作)。我认为您需要设置一个zoom
来查看Polyline
(这是一个相当小的一行),可能是这样的(demo)):
map = new GMaps({
div: '#map',
zoom: 19,
lat: 53.361320,
lng: -6.505633,
click: function(e){
console.log(e);
}
});
答案 1 :(得分:0)
您的path
由数组组成。它应该是google.maps.LatLng
的数组,然后可以传递给maps.drawPolyline
。
见https://developers.google.com/maps/documentation/javascript/examples/polyline-simple
答案 2 :(得分:0)
我发现了问题,我没有为结果设置css,我可以看到生成的地图
h1{
font-size:2em;
}
body{
font-family: 'Droid Sans', 'Helvetica', Arial, sans-serif;
margin:5px;
}
#map{
display: block;
width: 95%;
height: 350px;
margin: 0 auto;
-moz-box-shadow: 0px 5px 20px #ccc;
-webkit-box-shadow: 0px 5px 20px #ccc;
box-shadow: 0px 5px 20px #ccc;
}
#map.large{
height:500px;
}
.overlay{
display:block;
text-align:center;
color:#fff;
font-size:60px;
line-height:80px;
opacity:0.8;
background:#4477aa;
border:solid 3px #336699;
border-radius:4px;
box-shadow:2px 2px 10px #333;
text-shadow:1px 1px 1px #666;
padding:0 4px;
}
.overlay_arrow{
left:50%;
margin-left:-16px;
width:0;
height:0;
position:absolute;
}
.overlay_arrow.above{
bottom:-15px;
border-left:16px solid transparent;
border-right:16px solid transparent;
border-top:16px solid #336699;
}
.overlay_arrow.below{
top:-15px;
border-left:16px solid transparent;
border-right:16px solid transparent;
border-bottom:16px solid #336699;
}