谷歌地图api标记自定义图像错误加载

时间:2015-07-10 07:07:57

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

我有一个场景来检查给定网址是否存在标记自定义图像,如果网址返回404我应该通过考虑电子邮件ID创建默认的svg字母图像。 我能够独立创建一个svg图像并将其用作标记图标。我创建了一个函数来创建一个工作正常的字母图像。

所以这是我的问题

我怎么知道给定的网址是404?

i)我使用Ajax检查图像是否存在同步,但它不是   可行的解决方案,因为我有大约500个标记来检查网址,在地图上创建标记需要很长时间。

ii)我也使用了image.onerror()和image.onload(),但我无法使其同步。

这里是示例片段如何呈现标记,我粘贴的ajax代码工作正常,但需要很长时间才能加载

var icon = {
     url: markerImageUrl, // url
     size: new google.maps.Size(40, 40),
     origin: new google.maps.Point(0,0),
     scaledSize: new google.maps.Size(30,30),
     anchor: new google.maps.Point(0, 32)
 };

$.ajax({
    url:markerImageUrl,
    type:'HEAD',
    async:false,
    error: function()
    {
        console.log("Error in image url" +i);
        icon.url=prepareLettergravatar(email);//Function which gives me svg url 
    },
    success: function()
    {
        //file exists
    }
});



marker[i] = new google.maps.Marker({
  position: myLatlng[i],
  map: map,
  icon:icon
});

请建议我可能的解决方案

由于

0 个答案:

没有答案