Điểm:0

Bản đồ trường địa lý: thêm điểm đánh dấu trên trình nghe nhấp chuột

lá cờ us

Tôi đã thêm một bản đồ google mà tôi cung cấp nhờ mô-đun Geofield.

Tôi muốn thêm sự kiện onClick vào từng điểm đánh dấu để có hành vi tùy chỉnh.

đây là những gì tôi đã làm cho đến nay:

  Drupal.behaviors.geofieldGoogleMapInteraction = {
    đính kèm: chức năng (bối cảnh, cài đặt) {
      if (bối cảnh !== tài liệu) {
        trở lại;
      }

      // Phản ứng với sự kiện geofieldMapInit.
      $(document).on('geofieldMapInit', function (e, mapid) {
        var map = Drupal.geoFieldMapFormatter.map_data[mapid].map;
        var markers = Drupal.geoFieldMapFormatter.map_data[mapid].markers;
        map.addMarkerAddedCallback(function(markerClicked) { // không phải là một hàm
          triggerClick(markerClicked);
        });

        hàm triggerClick(markerClicked) {
          console.log("click!")
        }
        $.each(điểm đánh dấu, chức năng (storeId, điểm đánh dấu) {
          if(parseInt(storeId) !== 56) trả về;
          thuộc tính const = marker.geojsonProperties;
          $(điểm đánh dấu).on('click', function() {
            console.log("click") // không được kích hoạt
          });
        })
      });
    }
  };

Tôi không thể quản lý để kích hoạt nhấp chuột vào điểm đánh dấu, tôi không có gì trong bảng điều khiển của mình. Tôi sai ở đâu?

CHỈNH SỬA: đây là mã nguồn của một điểm đánh dấu duy nhất. Tôi không thấy bất kỳ dấu hiệu nào về cách có thể truy xuất id điểm đánh dấu... (Tôi có các điểm đánh dấu đơn và cụm cùng một lúc)

nhập mô tả hình ảnh ở đây

Điểm:2
lá cờ us

Nếu nó giúp được ai đó, đây là những gì tôi nghĩ ra:

  $(document).on('geofieldMapInit', function (e, mapid) {
    var map = Drupal.geoFieldMapFormatter.map_data[mapid].map;
    var markers = Drupal.geoFieldMapFormatter.map_data[mapid].markers;

    $.each(điểm đánh dấu, chức năng (storeId, điểm đánh dấu) {
      thuộc tính const = marker.geojsonProperties;
      google.maps.event.addListener(điểm đánh dấu, 'nhấp chuột', hàm() {
        console.log('click ' + storeId)
      })
    })
  });

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.