JavierB escribió:
function centrarCapa(obj) {
an=parseInt(document.getElementById(obj).style.wid th);
x=(document.body.clientWidth-an)/2;
... (aqui he recortado un poco el código pa que no fuera tan largo)
<body onLoad="centrarCapa('Layer1')" onResize="centrarCapa('Layer1')">
.....Con esto la capa estará centrada independientemente de la resolución, incluso aunque el usuario cambie el tamaño de la ventana.
-------------------------------------------------------------
Hola Javier:
El código que mandaste es fantástico para centrar una capa, y me funciona perfectamente en htm con Dreamweaver.
Pero me da un pequeño problema con Netscape 7.0, sólamente cuando ejecuto ésta función:
<script>
function pantallacompleta (URL){
var opciones=("toolbar=no, location=no, directories=no, status=no, menubar=no ,scrollbars=no, resizable=no, fullscreen=yes");
window.open(URL,"",opciones);
}
</script>
... donde la URL es precisamente la página que contiene el código para centrar capas, con Explorer no pasa nada, pero con Netscape se me va la capa hacia la esquina izquierda superior y se esconde la capa casi por completo.
-----------------------------
Solucioné el problema a medias, modificando el código "fullScreen" en la página madre que llama a la URL, de la siguiente manera:
<script>
function pantallacompleta (URL){
var opciones=("toolbar=no, location=no, directories=no, status=no, menubar=no ,scrollbars=no, resizable=no, fullscreen=yes");
if (navigator.appName == "Netscape") {window.open(URL,opciones);}
if (navigator.appName == "Microsoft Internet Explorer") {window.open(URL,"",opciones);}
}
</script>
Haciéndolo así, consigo que la ventana que se abre, tenga siempre la capa centrada, pero en Netscape 7.0 no se abre en fullscreen sino como pantalla normal. Me dijeron en otro foro que para que no suceda eso, debería insertar en la página de destino, el siguiente código:
<script>
// Netscape Resize Fix
if (document.layers) {
widthCheck = window.innerWidth
heightCheck = window.innerHeight
window.onResize = resizeFix
}
function resizeFix() {
if (widthCheck != window.innerWidth || heightCheck != window.innerHeight)
document.location.href = document.location.href
}
</script>
Lo inserté en la página de destino (la que lleva la capa centrada) y tampoco funciona. Puedes ver el ejemplo en la siguiente galería fotográfica:
http://www.webpersonal.net/entomofau...artropodos.htm
¿Qué solución crees que puedo aplicar?
Un cordial saludo,
Carles.