0

单击标记时,我想打开自定义 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>

这没有任何作用,我还希望标记在单击时居中。我很感激所有的答复!非常感谢 :)

4

2 回答 2

1

使用 marker.url = 'TEXT_WITHOUT_#_SIGN'

window.location.hash = marker.url

您可以使用 map.setCenter(marker.position) 或 map.panTo(marker.position) 不同之处在于 setCenter() 会立即使地图居中,而 panTo 会以平滑的移动方式完成。

于 2011-07-06T19:07:57.360 回答
1

要居中地图添加

map.setCenter(marker.getPosition());

作为事件监听器回调函数的第一行。关于网址

window.location.href = marker.get('url');

可能是使用 MVC 对象的解决方案。

于 2011-07-24T14:33:42.887 回答