gpt4 book ai didi

google-maps - IndexSizeError 使用谷歌地图 v3 : using google. maps.Marker

转载 作者:行者123 更新时间:2023-12-01 08:34:16 24 4
gpt4 key购买 nike

我正在使用 jquery 和谷歌地图 v3 创建一个页面,并且我正在尝试在谷歌地图上显示一个标记。出于某种原因,我在使用 Firefox 时遇到错误(并且标记未显示在 map 上):

Error: IndexSizeError: Index or size is negative or greater than the allowed amount Source 
File: http://maps.gstatic.com/intl/en_us/mapfiles/api-3/9/17/main.js
Line: 96

事实:* 它适用于 Safari* 如果我更改 MarkerImage url,它会起作用

我用来添加标记的代码如下:

var marker = new google.maps.Marker({
map: map,
icon: new google.maps.MarkerImage(
"/gfx/icons/poi.png",
new google.maps.Size(22,22),
new google.maps.Point(0,0),
new google.maps.Point(11,11),
new google.maps.Size(22,22)),
position: point
});

我的测试可以在这里看到:

http://geoape.com/_wp.php

最佳答案

似乎问题出在 google.maps.MarkerImage 对象中,在图像的实际大小与代码中定义的不一样的情况下,确切地说是在第五个 (scaledSize) 参数中。由于某种原因,如果图像大小定义不正确并且 scaledSize 与实际大小匹配但与图像大小不匹配,则 Firefox 无法处理缩放。

更准确地说:图像/gfx/icons/poi.png 不是 22 x 22 像素,而是 30 x 30 像素。所以要克服这个问题,有三种解决方案:

  • a) 相应地更改第二个参数(大小为google.maps.Size(30,30));
  • b) 相应地更改第五个参数(scaledSize 到 google.maps.Size(30,30));
  • c) 删除第五个将调整标记大小的参数(新的 google.maps.Size(22,22))图片。

在 a) 的情况下,markerImage 将被缩放到定义的尺寸 (22x22),在 b) 和 c) 的情况下,22x22 将从原始的 30x30 尺寸中裁剪出来。

关于google-maps - IndexSizeError 使用谷歌地图 v3 : using google. maps.Marker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12909632/

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