Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图api v3双图像图标_Javascript_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 谷歌地图api v3双图像图标

Javascript 谷歌地图api v3双图像图标,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,是否可以将第二个图像添加到标记?我希望同一点有两个标记,一个覆盖在另一个上面 我想把国旗挂在马克笔旁边 可能吗?在API v3.14之前,您可以在同一标记上同时使用图标和阴影图像文件来解决此问题 下面是我用v3.14解决它的方法+ 函数初始化(){ google.maps.visualRefresh=true; var mapDiv=document.getElementById('map-canvas'); var map=new google.maps.map(mapDiv{ 中心:新goo

是否可以将第二个图像添加到标记?我希望同一点有两个标记,一个覆盖在另一个上面

我想把国旗挂在马克笔旁边


可能吗?

在API v3.14之前,您可以在同一标记上同时使用
图标和
阴影图像文件来解决此问题

下面是我用v3.14解决它的方法+

函数初始化(){
google.maps.visualRefresh=true;
var mapDiv=document.getElementById('map-canvas');
var map=new google.maps.map(mapDiv{
中心:新google.maps.LatLng(0,0),
缩放:10,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var marker=new google.maps.marker({
位置:新google.maps.LatLng(0,0),
地图:地图
});
//学分:https://developers.google.com/maps/documentation/javascript/markers
marker.flag=新的google.maps.marker({
图标:{
网址:'https://google-developers.appspot.com/maps/documentation/javascript/examples/full/images/beachflag.png',
主播:新google.maps.Point(32,32)
}
});
marker.flag.bindTo('position',marker);
marker.flag.bindTo('map',marker);
}
google.maps.event.addDomListener(窗口“加载”,初始化);

请参阅:

这本书的可能副本太棒了,谢谢!是的,我读过关于阴影解决方案的书,但它似乎不正确。顺便问一句,有没有办法规定哪一个在前面还是后面?标记和标志的z索引?使用画布合并图像的解决方案如何?使用您的解决方案有什么缺点吗?如果有10000个标记,你会喜欢速度吗?加倍到2倍?我同意HTML画布,或者可能的服务器端图标生成,将是一个更优雅的解决方案。随着标记数量的增加,标记数量翻倍将影响性能。对于此问题,还有其他解决方案,例如使除活动地图视口中的标记之外的所有标记都不可见。这是一个快速而肮脏的解决方案。
 var icon = {
                    url: pointer.png,
                    size: new google.maps.Size(48,48),
                    origin: new google.maps.Point(0,0),
                    anchor: new google.maps.Point(24,24)
                  };

var marker = new google.maps.Marker({
                    position: pos,
                    map: map,
                    icon: icon
                  });