Enlace: http://www.shadowbox-js.com/
Enlace concreto a las demos: http://www.shadowbox-js.com/index.html#lgimage-demo (abris en "Large Image" la tercera: "Draggable" para ver lo que os explico a continuacion)
Explico un poco por encima porque uso el shadowbox y la modificacion que quiero hacer:
1- Aparte de lo tipico de los lightbox de abrir imagenes, webs, flash, etc en un popup no intrusivo, permite abrir imagenes a todo su tamaño (sin redimensionarlas) y da la posibilida de moverlas dentro de ese popup, es bastante util para mapas, que es para lo que lo quiero usar yo.
2- La modificacion que quiero hacer es que al abrirse se ponga en un punto concreto de la imagen, es decir, normalmente la abre ajustandola arriba y a la izquierda, lo que quiero es que la ajuste a una posicion X,Y que yo le doy, para que se abra en una parcela concreta del mapa.
La modificacion ya la tengo hecha (por si os lo descargais, modifiqué los ficheros shadowbox.js y players/shadowbox-img.js) y funciona, pero solo metiendole los parametros en el shadowbox.js aqui:
Código PHP:
// (linea 972)
//setDimensions: function(height, width, max_h, max_w, tb, lr, resizable){
setDimensions: function(height, width, max_h, max_w, tb, lr, resizable,TOP,LEFT){
var h = height = parseInt(height),
w = width = parseInt(width),
pad = parseInt(S.options.viewportPadding) || 0;
// CODIGO QUE NO VIENE A CUENTO PARA LO QUE PREGUNTO, POR AQUI POR EL MEDIO
// update Shadowbox.dimensions
S.dimensions = {
height: h + tb,
width: w + lr,
inner_h: h,
inner_w: w,
top: (max_h - (h + extra_h)) / 2 + pad,
left: (max_w - (w + extra_w)) / 2 + pad,
oversized: oversized,
resize_h: resize_h,
resize_w: resize_w,
//inner_t: TOP, inner_l: LEFT //NO FUNCIONA, NO LOS RECOJE
inner_t: -800, inner_l: -900 //AQUI LE PASARÍA LOS PARAMETROS
};
return S.dimensions;
},
<a href='mapagrande.jpg' title='Mapa'
rel="shadowbox;top=-800;left=-900;options={handleOversize:'drag'}">
este es el ejemplo que funciona y que ponen en la web para poner el tamaño al popup:
<a href="mymovie.swf" rel="shadowbox;height=140;width=120">My Movie</a>
Bueno.. despues de todo el rollo la pregunta es: ¿Cómo puedo pasarle esos parametros top y left para usarlos, o como hacer que los capture el codigo y lleguen al inner_t e inner_l?
Supongo que será facil, pero es que a mi no me sale y llevo 2 dias pegandome con ello y no hay manera
A ver si me podeis echar una mano, no creo que haga falta que ponga el resto de modificaciones porque no influyen, con los valores desde el codigo funciona bien, solo me falta eso, el que coja los valores desde el rel="..."
Un saludo.