Javascript 谷歌地图:可点击多段线图标
我有两个标记,用一条多段线连接这两个标记。 我在标记和多段线上有单击事件,但我试图使多段线更易于单击,而无需放置新标记或增加其笔划权重。 因此,我创建了一个圆形图标并放置在多段线上,但我无法使其可单击。可能吗 看到了这个帖子,但没有给出图标如何点击的任何细节。我搜索了它的源代码,但他添加了一个KML层。我不想那样做。 搜索了google maps overlay API,但没有找到任何用于侦听单击事件的界面。 我还尝试附加一个事件侦听器,但没有成功。我怀疑如果不添加实际的标记或对象,就无法完成此操作,但如果其他人有类似问题,我将非常感谢任何提示:) 提前谢谢 我的代码:Javascript 谷歌地图:可点击多段线图标,javascript,google-maps,events,polyline,Javascript,Google Maps,Events,Polyline,我有两个标记,用一条多段线连接这两个标记。 我在标记和多段线上有单击事件,但我试图使多段线更易于单击,而无需放置新标记或增加其笔划权重。 因此,我创建了一个圆形图标并放置在多段线上,但我无法使其可单击。可能吗 看到了这个帖子,但没有给出图标如何点击的任何细节。我搜索了它的源代码,但他添加了一个KML层。我不想那样做。 搜索了google maps overlay API,但没有找到任何用于侦听单击事件的界面。 我还尝试附加一个事件侦听器,但没有成功。我怀疑如果不添加实际的标记或对象,就无法完
var pathSymbol = {
path: google.maps.SymbolPath.CIRCLE,
scale: 8,
strokeColor: '#228B22'
};
var conPath = new google.maps.Polyline({
path: conCoord,
strokeColor: "#228B22",
strokeOpacity: 0.7,
icons: [{
icon: pathSymbol,
offset: '50%'
}],
strokeWeight: 2
});
conPath.setMap(map);
google.maps.event.addListener(conPath, 'click', (function(l,conCoord) {
return function() {
infowindowPath.setContent("<b>Ligação "+connections[l].id);
infowindowPath.setPosition(new google.maps.LatLngBounds(conCoord[1], conCoord[0]).getCenter());
infowindowPath.open(map);
}
})(l,conCoord));
var路径符号={
路径:google.maps.SymbolPath.CIRCLE,
比例:8,
strokeColor:“#228B22”
};
var conPath=new google.maps.Polyline({
路径:康科德,
strokeColor:#228B22“,
笔划不透明度:0.7,
图标:[{
图标:路径符号,
抵销:“50%”
}],
冲程重量:2
});
setMap(map);
google.maps.event.addListener(conPath,'click',(函数(l,concord){
返回函数(){
setContent(“Ligação”+connections[l].id);
infowindowPath.setPosition(新的google.maps.LatLngBounds(conCoord[1],conCoord[0]).getCenter());
infowindowPath.open(地图);
}
})(l,conCoord));
我也需要这个功能,但不幸的是这是不可能的-我几乎肯定(请参阅我的)。我这样说是因为:
var mySymbol={
路径:google.maps.SymbolPath.CIRCLE,
比例:25,
冲程重量:5,
填充不透明度:.2
};
var myPolyline=new google.maps.Polyline({
图标:[{
图标:mySymbol,
固定旋转:对,
抵销:50%,
}],
路径:[多段线中心,多段线端点],
strokeColor:'黑色',
频闪不透明度:1,
冲程重量:5,
地图:myMap
});
//因为是对象的实例,所以可以工作
google.maps.event.addListener(myPolyline,'click',function(){
警报('单击多段线!');
});
//不起作用:-(因为是对象文字)
google.maps.event.addListener(mySymbol,'click',function(){
警报('Symbol clicked!');
});
是的,这也是我得出的结论,我最终放弃了。谢谢你的回答。6年后情况还是一样吗!。有人能证实吗?
addListener(instance:Object, eventName:string, handler:Function)