我有一个场景来检查给定网址是否存在标记自定义图像,如果网址返回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
});
请建议我可能的解决方案
由于