我有一个左侧菜单栏,当有人点击某个链接时,它会跳转到地图上的标记位置。这很好。
但是,我想更新这个,以便当他们点击左侧栏中的链接时,地图以标记为中心并缩放到某个级别。但这并不是很有效。
我在Firebug中收到的错误是:
missing ) after argument list
map.setCenter(latlng:latLng);
代码:
<div id="LeftArea" style="width: 220px; float: left; border-bottom: 1px solid #dedede; padding: 5px 0 5px 0;">
<div style="color: #a41d21;font-size: 13px; font-weight: bold;">
<script language="javascript" type="text/javascript">
document.write('<a href="javascript:myclick(' + (i) + ')">' + '[[Title]]' + '<\/a><br>');
</script>
</div>
<div>
[[Address]]<br />
[[City]], [[State]] [[Zip]]
</div>
</div>
myclick = function(i) {
google.maps.event.trigger(gmarkers[i], "click");
}
// Associate the markers with the links in the side bar.
gmarkers[i] = marker;
// Display the info window when someone clicks on a marker or it's associated side bar link.
google.maps.event.addListener(marker, 'click', function () {
map.setCenter(latlng:latLng);
map.setzoom(zoom: 16);
InfoWindow.setContent(this.html);
InfoWindow.open(map, this);
});
答案 0 :(得分:1)
map.setCenter()
和map.setZoom()
需要特定的参数,文档对其语法没有帮助。
map.setCenter()
需要LatLng
个对象:
myLatLng= new google.maps.LatLng(0,0);
map.setCenter(myLatLng);
map.setZoom()
采用一个简单的整数:例如map.setZoom(16);
冒号在对象定义中有特殊用途,但在这里没有位置。这就是导致错误消息的原因。
附加问题:latLng在这里是什么......?
map.setCenter(latlng:latLng);
这需要在某处定义。也许您希望地图以标记为中心?
map.setCenter(this.getPosition());