Foros del Web » Programando para Internet » Javascript »

Manejo de ventanas

Estas en el tema de Manejo de ventanas en el foro de Javascript en Foros del Web. Hola a todos, Estoy intentando hacer 1 programita, que tenga un textbox (píxeles), 2 radiobutton (mover y expandir) y luego 4 botones (izqda, decha, arriba ...
  #1 (permalink)  
Antiguo 23/04/2007, 07:49
 
Fecha de Ingreso: febrero-2007
Mensajes: 244
Antigüedad: 17 años, 2 meses
Puntos: 0
Manejo de ventanas

Hola a todos,

Estoy intentando hacer 1 programita, que tenga un textbox (píxeles), 2 radiobutton (mover y expandir) y luego 4 botones (izqda, decha, arriba y abajo). Según la opción elegida, que se mueva o se expanda la ventana x pixeles en la dirección indicada.

Al iniciar la aplicación, me tiene que aparecer la ventana centrada y con un tamaño determinado.

Tengo esto:

Cita:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="es">

<head>
<title> DOM. Métodos del Objeto window </title>

<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" >
<meta name="description" content="DOM" >
<meta name="keywords" content="DOM" >

<script type="text/javascript" src="acciones.js"></script>

<SCRIPT type="text/javascript">
<!--
function iniciar () {
x1 = (window.screen.width - 500) / 2;
y1 = (window.screen.height - 400) / 2;
window.moveTo(x1, y1);
window.resizeTo(500, 400);
}

function obtenerValor(radiob, posicion, valor) {
var pix = document.form1.pixeles.value;
for(i=0; i<radiob.length; i++)
if(radiob[i].checked)
valor = radiob[i].value;
alert (posicion + ", " + valor);
if (valor == "mover") {
switch (posicion)
{
case "izqda": window.moveBy(window.screen.width, -pix);alert ("Izqa");break;
case "dcha": window.moveBy(window.screen.width, pix);alert ("dcha");break;
case "arriba": window.moveBy(pix, window.screen.height);alert ("arriba");break;
case "abajo": window.moveBy(-pix, window.screen.height);alert ("abajo");break;
}
}
else
if (valor == "expandir") {
switch (posicion)
{
case "izqda": window.resizeBy(window.screen.width, window.screen.height-pix);alert (window.screen.width +","+ -pix);break;
case "dcha": window.resizeBy(window.screen.width, window.screen.height+pix);alert (window.screen.width +","+ pix);break;
case "arriba": window.resizeBy(window.screen.width+pix, window.screen.height);alert (pix +","+ window.screen.height);break;
case "abajo": window.resizeBy(window.screen.width-pix, window.screen.height);alert (-pix +","+ window.screen.height);break;
}
}
}

function cerrar() {
var ventana = window.self;
ventana.opener = window.self;
ventana.close();
}

//-->
</SCRIPT>

</head>

<body onLoad="iniciar()">


<form action="" name="form1">
<p>Número de píxeles <input type="text" name="pixeles" value="0" size="10"></p>
<p>
<input type=radio checked name="gruporadio" value="mover"> Mover
</p>
<p>
<input type=radio name="gruporadio" value="expandir"> Expandir
</p>
<p>
<a href="#"><img src="imagenes/dcha.jpg" alt="Hacia la derecha" height="31" width="50" onClick="obtenerValor(gruporadio,'dcha', pixeles.value)"></a>
<a href="#"><img src="imagenes/izqda.jpg" alt="Hacia la izquierda" height="31" width="50" onClick="obtenerValor(gruporadio,'izqda', pixeles.text)"></a>
<a href="#"><img src="imagenes/arriba.jpg" alt="Hacia la arriba" height="31" width="50" onClick="obtenerValor(gruporadio,'arriba', pixeles.text)"></a>
<a href="#"><img src="imagenes/abajo.jpg" alt="Hacia la abajo" height="31" width="50" onClick="obtenerValor(gruporadio,'abajo', pixeles.text)"></a>
</p>
<p>
<a href="#"><img src="imagenes/cerrar.jpg" width="88" height="31" border="0" onClick="self.close()"></a>
</p>

</form>

</body>

</html>
El problema es que, con IExplorer, al intentar mover, se me minimiza la ventana y no me hace nada. Y el expandir tampoco me funciona.

Con Mozilla, ni se mueve ni se expande, y al iniciar, solo me hace lo del cambio de tamaño, no me lo centra en la pantalla.

Alguien me puede ayudar??
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:28.