Pregunta Google Maps v3 InfoBox Agregar escucha de eventos


Tengo un mapa de Google (v3) con 20 marcadores. Tengo una sola instancia de InfoBox que se rellena con un div que incluye el texto para llenar el cuadro como innerHTML.

Quiero poder hacer clic en el cuadro de información y navegar a una página diferente, pero no puedo obtener el cuadro de información o el div en su interior para responder a un evento de clic.

He intentado agregar un detector de eventos, y he intentado agregar un domListener, pero no puedo hacer que ninguno de los dos funcione.

Aquí hay algunos fragmentos de mi código

//setting up the infobox

    var infobox = new InfoBox({
           disableAutoPan: true
          ,isHidden:false
          ,pixelOffset: new google.maps.Size(-10, -10)
          ,closeBoxURL: ""
          ,pane: "mapPane"
          ,enableEventPropagation: true
        });

    //setting up the div

    var boxText1 = document.createElement("div");
        boxText1.id = "boxText1";
        boxText1.className = "labelText";
        boxText1.innerHTML = title1;//this is created earlier

    //the marker event listener - the marker and coordinates are also set up earlier
       google.maps.event.addListener(_marker1, 'click', function() { 
       infobox.content_ = boxText1;
       infobox.position_ = mkLatLng1;
       infobox.open(map);
    });

      //so far everything ok. When the user clicks the marker the infobox pops up - but.....

    google.maps.event.addDomListener(boxText1,'click',function(){ alert('clicked!') });//doesn't work

He intentado una variedad de otras opciones, pero todas son fotos en la oscuridad. ¿Cuál es la mejor manera de escuchar un evento de clic en un cuadro de información?

Gracias


5
2018-06-27 14:08


origen


Respuestas:


Problema resuelto. En las opciones de la caja de información, debes asegurarte de que tienes

pane: "floatPane" 

y no

pane: "mapPane"

como lo tenia yo Funciona bien ahora

Curiosamente los Google Docs dicen

Set the pane to "mapPane" if the InfoBox is being used as a map label.

Lo que no dicen es que no puede usar esta opción si desea que se pueda hacer clic en la etiqueta del mapa.


11
2018-06-27 22:14