ฉันได้เพิ่มแผนที่ Google ที่ฉันป้อนด้วยโมดูล Geofield
ฉันต้องการเพิ่มเหตุการณ์ onClick ให้กับแต่ละเครื่องหมายเพื่อให้มีลักษณะการทำงานที่กำหนดเอง
นี่คือสิ่งที่ฉันได้ทำไปแล้ว:
Drupal.behaviors.geofieldGoogleMapInteraction = {
แนบ: ฟังก์ชัน (บริบท การตั้งค่า) {
ถ้า (บริบท !== เอกสาร) {
กลับ;
}
// ตอบสนองต่อเหตุการณ์ geofieldMapInit
$(document).on('geofieldMapInit', ฟังก์ชัน (e, mapid) {
แผนที่ var = Drupal.geoFieldMapFormatter.map_data[mapid].map;
เครื่องหมาย var = Drupal.geoFieldMapFormatter.map_data[mapid].markers;
map.addMarkerAddedCallback(function(markerClicked) { // ไม่ใช่ฟังก์ชัน
triggerClick (เครื่องหมายคลิก);
});
ฟังก์ชันทริกเกอร์คลิก (เครื่องหมายคลิก) {
console.log("คลิก !")
}
$.each(ตัวทำเครื่องหมาย, ฟังก์ชัน (storeId, ตัวทำเครื่องหมาย) {
if(parseInt(storeId) !== 56) return;
คุณสมบัติ const = marker.geojsonProperties;
$(marker).on('คลิก', function() {
console.log("click") // ไม่ถูกทริกเกอร์
});
})
});
}
};
ฉันไม่สามารถจัดการกับการคลิกเครื่องหมายได้ ฉันไม่มีอะไรเลยในคอนโซลของฉัน ฉันผิดตรงไหน ?
แก้ไข : นี่คือซอร์สโค้ดของเครื่องหมายเดียว ฉันไม่เห็นสัญญาณว่าสามารถดึงรหัสเครื่องหมายได้อย่างไร ... (ฉันมีคลัสเตอร์และเครื่องหมายเดี่ยวพร้อมกัน)