Hola Gustavo.
Si tienes un matriz con los markers, o sea markers[i] y cada uno tiene su
controlador del click no debería haber problema.
Si hay un solo controlador del click para todos los markers, el parametro
'event' tiene una propiedad 'object' que sería el marker que ha lanzado el
evento.
Sería algo así:
function click(evt) {
var marker = evt.object;
(...)
OpenLayers.Event.stop(evt);
}
Con esto sabrías el marker y harías lo que sea con él.
Espero que te resuelva.
Un saludo
Fdo.: Santiago Higuera
http://ingemoral.es/wordpress
From: Gustavo Jarrín
Sent: Monday, July 12, 2010 10:16 PM
To: [email protected]
Subject: RE: [Spanish] Simular evento mousedown en OL
Muchas gracias Santiago. Es exactamente lo que ando buscando. Una última
inquietud:
Si tengo varias marcas (marker), cómo le hago para saber de cual marker debo
abrir/simular su popup?
Segun el ejemplo del enlace indicado, tal vez pasando como parametro en cada
link la "lonlat" a la funcion markerClick pero esta recibe como unico parametro
el "event"
Saludos,
Gustavo
POR CIERTO, MUY INETERSANTE EL BLOG DESCARTES!!
--------------------------------------------------------------------------------
From: [email protected]
To: [email protected]
Subject: Re: [Spanish] Simular evento mousedown en OL
Date: Mon, 12 Jul 2010 21:11:10 +0200
A mi me ha funcionado haciendo la llamada de la siguiente forma:
marker.events.triggerEvent('click',marker.events);
Donde marker es un marcador en el que he registrado un evento 'click' con la
linea:
marker.events.register('click', marker, markerClick);
y en esta última markerClick(ev) es la función controladora del evento click.
El ejemplo completo lo puedes ver en http://ingemoral.es/pages/testpopups.html
En el Blog Descartes estamos publicando una serie de artículos de programación
con OpenLayers que a lo mejor te interesan.
http://ingemoral.es/wordpress
Fdo.: Santiago Higuera
From: Gustavo Jarrín
Sent: Monday, July 12, 2010 8:16 PM
To: [email protected]
Subject: [Spanish] Simular evento mousedown en OL
Saludos amigos,
Espero me puedan ayudar. Tengo una app con Openlayers, intento simular el
evento "mousedown" (click sobre una marca en el mapa) desde un link. Es decir,
que al hacer click en un enlace de texto simule el evento para abrir la ventana
popup de una marca en particular.
He buscado en la web y he encontrado algo como este ejemplo:
En html:
.
.
<a href="#" onClick="simularPopup();">Simular popup</a>
.
.
En mi javascript:
.
function simularPopup()
{
markers.marker[0].events.triggerEvent('mousedown', {}); //"markers" es mi
layer de iconos en el mapa, "marker" el nombre de mis marcas.
}
.
.
Pero los browsers no reconocen "marker[x]" o simplemente no hacen nada.
El evento "mousedown" ya esta registrado
(...marker.events.register("mousedown", feature, markerClick);...) y funciona
bien.
Agradecería cualquier sugerencia.
Gustavo Jarrín
--------------------------------------------------------------------------------
Discover the new Windows Vista Learn more!
--------------------------------------------------------------------------------
_______________________________________________
Spanish mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/spanish
--------------------------------------------------------------------------------
Connect to the next generation of MSN Messenger Get it now!
--------------------------------------------------------------------------------
_______________________________________________
Spanish mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/spanish
_______________________________________________
Spanish mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/spanish