GoogleMaps v3 API 单击时仅创建 1 个标记

2024-01-09

我成功地创建了一个点击标记,但是,使用以下代码,每次点击我都会得到一个新标记,我只希望添加一个标记,如果有人点击多次,我希望它将现有标记移动到新标记任何人都可以帮忙这是代码

 function placeMarker(location) {
        var clickedLocation = new google.maps.LatLng(location);
        var marker = new google.maps.Marker({
            position: location,
            map: map
        });
    }

google.maps.event.addListener(map, 'click', function(event) {
        placeMarker(event.latLng);

var marker;

function placeMarker(location) {
  if ( marker ) {
    marker.setPosition(location);
  } else {
    marker = new google.maps.Marker({
      position: location,
      map: map
    });
  }
}

google.maps.event.addListener(map, 'click', function(event) {
  placeMarker(event.latLng);
});

您必须始终在同一个标​​记上工作 - 不要创建新的标记。 这里有一个全局变量marker and in placeMarker函数您第一次将标记分配给该变量。下次它会检查标记是否已存在,然后更改其位置。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GoogleMaps v3 API 单击时仅创建 1 个标记 的相关文章

  • 有没有办法淡出 V3 google.maps.Polygon?

    有没有办法淡出 V3 google maps Polygon 我不想只是隐藏 删除标准 Google Maps V3 多边形 而是想将其淡出 这可能吗 那里有插件吗 以下是我创建的一个解决方案 用于解决描边和填充的统一淡出问题 我通过将其设
  • 是否可以在不点击的情况下显示多个标记的多个信息窗口?

    我想在谷歌地图中显示多个标记的多个信息窗口 信息窗口应该在不点击标记本身的情况下显示 是否可以 经过研究 我了解到将标记设置为地图视图选定标记可以使信息窗口显示而无需点击它 但是 不能一次选择多个标记作为地图视图的选定标记 有什么可以做的吗
  • 在 GeoJson 数据接收到的 Google 地图多边形上放置标签

    我想将带有信息的标签 或带有标签的 div 放在由下面的代码片段绘制的多边形上 样式属性已成功应用于要素 多边形类型 有谁知道如何向该特征添加文本并将其显示在多边形的中心 function handleGeoJson data map da
  • 第一个 MapActivity 实例总是泄漏吗?

    在研究应用程序中的内存问题时 发现如果应用程序 Activity 是 MapActivity 则它的第一个实例将不会最终确定 导致其他内存泄漏 例如传递给setContentView的视图 之前有人注意到吗 下面的测试代码显示 MainAc
  • 如何检测谷歌地图是否加载成功

    我在我的网站中使用谷歌地图版本 3 我遇到了地图有时无法加载的问题 而是显示为灰色框 并且浏览器日志将充满错误 不幸的是 我现在无法获取日志 因为地图再次工作 根据一些研究 问题是因为我使用的实验版本 有没有办法查明地图是否已成功加载或崩溃
  • Cordova - 已弃用尝试访问非导航器对象上的属性“userAgent”

    我正在尝试让我的 Cordova iPhone 应用程序在 iOS 8 1 中运行 在 7 中工作正常 从 8 开始出现以下错误 Deprecated attempt to access property userAgent on a no
  • 根据已知的纬度和经度点在图像上放置点的尝试失败

    我为这个含糊的标题道歉 我真的想不出更好的方法来总结它 非常欢迎提出建议 我正在开发一个实际上不需要谷歌地图的项目 它只会为这个项目带来额外的开销 但是 到目前为止 我不知道如何在没有谷歌地图的情况下做到这一点 如果我要将平面图的图形叠加层
  • android - 如何在android中打开kml文件

    我的 SD卡中存储了一个 KML 文件 我想通过我的应用程序中的谷歌地图打开它 所以我使用了下面的代码 但我收到错误消息 android非法状态异常无法执行活动的方法 我不想绘制地图 只是想打开一个已经存储在我的SD卡中的kml文件并显示它
  • Google 地图信息窗口根据内部内容调整大小

    我正在使用此方法创建自定义信息窗口 UIView mapView GMSMapView mapView markerInfoWindow GMSMarker marker基于UIStoryboard使用自动布局 我预计一些内部视图将被调整大
  • Font Awesome 图标作为 Google Maps API V3 中的标记

    我想使用一个很棒的字体图标作为 Google 地图标记 这是我的代码 function addMarker marker marker1 new google maps Marker position new google maps Lat
  • 在 iOS 和 Android 版 Google 地图上突出显示国家/地区

    我正在尝试在地图上突出显示国家 地区 对于iOS我发现很少有演示 Demo1 http sugartin info 2012 02 13 adding overlays on mkmapview using mkpolygon mkpoly
  • 如何在react-google-maps中添加标记?

    在中使用 React JS流星1 5 https www meteor com Question 需要一种添加方式Marker using 反应谷歌地图 https github com tomchentw react google map
  • 如何在默认 Google 地图上方添加叠加地图?

    从一开始就需要明确的是 我从未在我的任何程序 项目中使用过谷歌地图 所以我对此事有一点了解 另外 我在 SO 中发现了一些关于 Google 地图的其他帖子 但我不确定这些帖子是否真的对我的情况有帮助 我想要做的是在现有的 Google 地
  • 无法使用 Salesforce Crypto Class for Google Maps API 生成 HMac

    我的公司最近注册了 Google Maps API for Business 要使用该 API 我需要生成 HMac SHA1 签名 并将其添加到我的 HTTP 请求中 不幸的是 不知何故 我无法生成正确的签名 为了进行测试 我使用谷歌提供
  • 修复了 Google 地图混搭中的图例

    我有一个带有 Google 地图混搭的页面 其中的图钉按日期 周一 周二等 进行颜色编码 包含地图的 IFrame 是动态调整大小的 因此当浏览器窗口调整大小时 它也会调整大小 我想在地图窗口的一角放置一个图例 告诉用户每种颜色的含义 Go
  • 存储与地点详细信息一起返回的照片参考

    我可以存储通过地点详细信息 API 返回的照片引用 最多返回 10 个 以便稍后可以直接使用它们通过地点照片 API 调用来获取照片吗 ToS 规定我们无法存储任何内容 正如你所说 ToS https cloud google com ma
  • 使用 Selenium 放置嵌入的谷歌地图标记

    我有一个 asp net 网站 作为向导的一部分 它使用嵌入式谷歌地图通过单击地图放置标记来选择位置 我如何使用 Selenium 实现自动化 我特别尝试过 ClickAt 双击 鼠标按下 鼠标按下 在所有情况下 传递地图 div id 作
  • angular2-google-maps 自动完成功能不起作用

    我正在尝试使用 angular2 google maps 将自动完成功能添加到我的项目中 我在 AppModule 中添加 AgmCoreModule forRoot 带有库 places 然后在组件中添加自动完成代码 我仍然收到 无法读取
  • Google 使用折线和标记绘制地图性能

    我们正处于决策点 哪种技术将用于我们的高负载航班优惠地图 有一个简单的测试 http buruki com gmap http buruki com gmap但如果我选择伦敦或莫斯科 他们有约 200 300 个航班目的地 大多数浏览器 当
  • 无法访问 com.google.android.gms.internal.zzbfm 的 zzbfm 类文件未找到

    我正在将我的 Android 应用程序项目从GCM to FCM 为此 我使用 Android Studio 中的 Firebase 助手工具 并遵循 Google 开发人员指南中的说明 一切都很顺利 并将我的应用程序代码更改为FCM根据助

随机推荐