我的网页中嵌入了谷歌地图,我想使用自定义图像创建标记。这是添加标记的代码。'map' 是代表 Google 地图对象的变量。
function addMarker(location) {
var image = new google.maps.MarkerImage("tree.gif", null, null, null, new google.maps.Size(16, 24));
marker = new google.maps.Marker({
position: location,
map: map,
icon: image
});
};
这在 IE 8、Chrome 25、Firefox 19 和 Safari 5(桌面)中运行良好 - 创建了标记并显示了 tree.gif 图像。但是,这在 iOS 6(iPad 和 iPhone)上的 Safari 移动版中不起作用。
如果满足以下条件,这确实适用于 Safari 移动设备:
...我删除了自定义图标 - 出现默认的 Google 地图标记图标(红色图钉)
...我使用其他图像文件的远程 URL(例如/ http://somedomain.com/images/someimage.gif)
我一直在 SOF 和 Google 小组工作,但都没有运气。有任何想法吗?
2013 年 3 月 12 日添加:此站点已上线并显示此行为(最后检查)。从“标记”页面开始在您的 GPS 位置张贴标记,然后检查“地图”页面以查看您的标记是否显示。源代码在GitHub 上- 问题在 scripts/map.js 文件中。
2013 年 3 月 15 日添加:缩小范围。我的页面还使用 HTML5 服务器发送的事件。上述行为仅在 EventSource 连接打开时发生。但是,如果我注释掉这一行,标记会按预期显示(链接到上一段中的代码):
var source = new EventSource('../pickups');