4 votos

Cambiar el tamaño de un OpenLayers.Control.OverviewMap

Puedo crear mi OpenLayers.De Control.OverviewMap con un tamaño dado, pero me gustaría cambiar cuando se cumplen ciertas condiciones. He probado con dos enfoques sin suerte...

Mi primer intento fue solo cambiar la anchura y la altura a través de atributos CSS:

$("div.olControlOverviewMapElement>div.olMap").css('width',320);

Sí cambia su tamaño visual, pero luego la vista del mapa no funciona correctamente, la "nueva ganado" el espacio en el overviewmap no es utilizable (no puede ser utilizado para arrastrar el rectángulo de vista)

Mi segundo intento fue simplemente cambiando su tamaño de la propiedad:

ovMap.size = new OpenLayers.Size(320,240);

pero no tiene ningún efecto a la vista del mapa.

Es posible cambiar su tamaño una vez que se ha creado?

Información adicional: el Uso de OpenLayers-2.10, y en ambos casos he intentado llamar al método update() del control.

7voto

Vasu Puntos 11
Esto parece funcionar.

5voto

dariapra Puntos 1976

Que yo sepa, la regla general es que el tamaño del control se establece cuando se crea, y después de eso no se puede cambiar.

La única solución que encuentro es que cuando se cumplen las condiciones (a) Saque el control OverviewMap (b) crear una nueva con el tamaño deseado y (c) agregar al mapa.

0voto

eplawless Puntos 2076

Tal vez puede intentar hacer algo con el método isSuitableOverview() . Si no es así, usted podría intentar una función dependiendo de un evento determinado a desarmar te mapoverview objeto de fuego y crear una con nuevas opciones.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X