gpt4 book ai didi

javascript - Rails Google map javascript api v3 setIcon() url 无法定位图像

转载 作者:行者123 更新时间:2023-11-28 19:20:09 25 4
gpt4 key购买 nike

我使用 setIcon() 方法在鼠标悬停在页面上的元素上时更改标记图像。当 url 是这样的时候它工作正常:

marker.setIcon('https://www.google.com/mapfiles/marker_green.png');

但是当我尝试让它在本地应用程序目录中查找图像时,它找不到该图像(原始标记图像消失但新图像没有出现):

marker.setIcon('images/myMarker.png');

我尝试了所有可能的网址(app/assets/images/myMarker.png、/images/myMarker.png、assets/images/myMarker.png 等),并将图像放置在许多不同的位置,它还是不行。

如何让 javascript 找到我的 png?

最佳答案

假设这是一个 Assets 管道错误,即 marker_green.png 在生产中变成类似于 marker_green-336339d13ed7edf253018e0f7f70bee2.png 。以下是一些解决方案:

  1. 将marker_green.png文件放在公共(public)目录中,例如公共(public)/mapfiles/marker_green.png

  • 为 html 元素上的图像路径设置数据属性,例如加载 map 的 div,并使用 JS/jQuery 获取。即:
  • HTML:

    <div id="map" data-marker-url="<%= asset_url('marker_green.png') %>"></div>

    JS:

    var markerIcon = $("#map").data('marker-url');
    marker.setIcon(markerIcon);

    关于javascript - Rails Google map javascript api v3 setIcon() url 无法定位图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29045336/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com