问题描述
如何将Google Maps的addListener类型放到MapBox上而不是下面? 感谢您的回复!
stationI.addListener('click',function() {
SetStationInfo(this.title);
});
以下是完整代码:
for (var i=0;i<APIinfo.network.stations.length;i++){
popup = new mapBoxgl.Popup({ offset: 25 })
.setText(APIinfo.network.stations[i].name); //MapBox
var marker = new mapBoxgl.Marker()
.setPopup(popup)
.setLngLat([APIinfo.network.stations[i].longitude,APIinfo.network.stations[i].latitude])
.addTo(map); //MapBox
stationI.addListener('click',function() { //Google Maps
SetStationInfo(this.title);
});
}
解决方法
在读取代码时,不确定stationI
是什么还是层或对象。
但是对于mapbox中的事件,您可以执行以下操作:
map.on('click',function(e) {
console.log('A click event has occurred at ' + e.lngLat);
});
您还可以添加图层:
map.on('click','yourLayerId',function(e) {
console.log('A click event has occurred at ' + e.lngLat);
});