You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google街景全景中为Google Map添加点击触发的标记?

街景模式下点击添加地图标记的实现方案

你需要监听街景全景(StreetViewPanorama)自身的click事件,而非地图实例的click事件——因为进入街景模式后,地图的点击事件会被街景层拦截,无法触发。街景组件有独立的事件系统,具体实现如下:

核心步骤

  • 通过地图实例的getStreetView()方法获取当前街景对象;
  • 给街景对象绑定click事件,回调参数会携带点击位置的经纬度;
  • 利用该经纬度在地图上创建标记。

代码示例

// 假设已初始化地图实例map
const streetView = map.getStreetView();

// 监听街景点击事件
streetView.addListener('click', (event) => {
  // 获取点击位置的经纬度
  const targetLatLng = event.latLng;
  
  // 在地图上添加标记
  new google.maps.Marker({
    position: targetLatLng,
    map: map,
    title: '街景点击点'
  });
});

补充说明

  • 街景click事件的回调参数中,latLng属性直接对应点击位置的地面坐标,可直接用于标记创建;
  • 若使用独立的街景容器(非地图内嵌),只需初始化StreetViewPanorama实例并绑定相同事件即可;
  • 拖拽标记在街景中正常可用,是因为标记属于地图实例,街景仅作为地图的视图层存在,不影响标记的交互逻辑。

内容的提问来源于stack exchange,提问作者William Anderson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 00:22:10