我想在单击标记时打开自定义Jquery弹出窗口。网址是#popup1或#popup2等等。我尝试了适用于URL的url标记,但不是我想要的。
以下是代码:
<div id="map" style="width: 500px; height: 400px;"></div>
<script type="text/javascript">
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 2,
center: new google.maps.LatLng(35.55, -25.75),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
position: map.getCenter(),
url: '#popup1',
map: map
});
google.maps.event.addListener(marker, 'click', function() {
window.location.href = marker.url;
});
</script>
这没有任何作用,我还希望标记在点击时位于中间。我很感谢所有回复! 非常感谢:)
答案 0 :(得分:1)
使用marker.url ='TEXT_WITHOUT _#_ SIGN'
window.location.hash = marker.url
您可以使用map.setCenter(marker.position)或map.panTo(marker.position) 区别在于setCenter()可以立即使地图居中,而panTo可以很好地平滑移动。
答案 1 :(得分:1)
以地图为中心添加
map.setCenter(marker.getPosition());
作为事件监听器的回调函数的第一行。关于URL
window.location.href = marker.get('url');
可能是使用MVC对象的解决方案。