在Google地图PolyLine叠加层上检测点击事件,可以通过以下步骤实现:
var polyline = new google.maps.Polyline({
path: [...], // 您的路径坐标数组
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 2
});
polyline.setMap(map);
google.maps.event.addListener()
方法监听Polyline对象的click
事件。例如:google.maps.event.addListener(polyline, 'click', function(event) {
console.log('Polyline clicked:', event.latLng);
});
在这个回调函数中,event.latLng
将包含被点击的坐标。您可以在这里执行您需要的操作,例如显示一个信息窗口或者触发其他事件。
完整的示例代码如下:
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 17,
center: {lat: 37.772, lng: -122.214} // 您的地图中心点
});
var polyline = new google.maps.Polyline({
path: [...], // 您的路径坐标数组
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 2
});
polyline.setMap(map);
google.maps.event.addListener(polyline, 'click', function(event) {
console.log('Polyline clicked:', event.latLng);
});
}
请注意,这个方法只能检测到Polyline本身的点击事件,而不能检测到叠加在Polyline上的其他元素。如果您需要在叠加层上检测点击事件,可以考虑使用其他方法,例如在地图上添加自定义覆盖物并监听它们的点击事件。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云