【问题标题】:Change google maps marker on directions更改方向上的谷歌地图标记
【发布时间】:2014-06-12 08:27:36
【问题描述】:

如何更改谷歌地图上方向上的标记图标?

注意:纯 CSS 基于容器元素的类 id 的肮脏方法不被接受,也不接受 js 搜索和替换 img src。

【问题讨论】:

  • 你试过在DirectionsRendererOptions中设置markerOptions吗?
  • @duncan 它似乎对 directions 没有任何影响 :(
  • 请创建jsfiddle
  • 你已经检查过这个答案了吗? stackoverflow.com/questions/4813728/…
  • 在页面中做F12,用google map和marker,在chrome中查看源码找到感兴趣的元素,以及css代码的来源。如果我是你,我会先这样做。

标签: google-maps-api-3 google-maps-markers


【解决方案1】:

在赏金到期和大量研究之后,我回答了我自己的问题:在 Google maps API v3 中,自 2014 年 6 月 24 日起,似乎没有官方方法可以更改这些标记。

可能的肮脏解决方案:

CSS:

display:none 设置为图像的任何类,并在父 div 上设置自定义背景。相应地设置宽度和高度。

“方向”-“地图上的标记”之间的点击功能将保持不变,但 API 返回的类名的微小变化都会导致问题。语义上不正确,因为显示的图像是 div 的背景,并且不可点击。

JS:

添加一个监听器,在路线调用之后,当地图空闲时,搜索图像的标记并替换 img src。如果从 API 返回的标记发生更改,则将失败,因为您必须按 id、类名或类似名称进行选择。

JS:

报废数据,然后根据需要重新渲染。 “方向”-“地图上的标记”之间的点击功能当然会丢失,并且仍然不稳定,因为基于报废。


在上述任何情况下,您都必须在 markerOptions 中取消标记,并更改用作点“A”和点“B”的标记以匹配您的脏解决方案结果。

很高兴看到比这更好的答案。

【讨论】:

    猜你喜欢
    • 2011-11-18
    • 2014-09-16
    • 2014-06-02
    • 2017-10-07
    • 1970-01-01
    • 2013-10-15
    • 2011-06-16
    相关资源
    最近更新 更多