Foros del Web » Programando para Internet » Javascript »

tamaño (real) de panatalla

Estas en el tema de tamaño (real) de panatalla en el foro de Javascript en Foros del Web. Hola gente: Necesito saber si es posible mediante javascript obtener el valor REAL de la pantalla en este momento. Es decir, no necesito la resolución ...
  #1 (permalink)  
Antiguo 29/04/2005, 17:03
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 21 años, 6 meses
Puntos: 2
tamaño (real) de panatalla

Hola gente:

Necesito saber si es posible mediante javascript obtener el valor REAL de la pantalla en este momento.

Es decir, no necesito la resolución del usuario, sino saber que tamaño tiene la ventana del navegador en ese momento para así "mover" un div respetando ese tamaño.

Espero se entienda mi pedido.

Saludos.
__________________
I Love Programming...
  #2 (permalink)  
Antiguo 30/04/2005, 11:44
(Desactivado)
 
Fecha de Ingreso: febrero-2005
Ubicación: Azcapotzalco
Mensajes: 299
Antigüedad: 19 años, 9 meses
Puntos: 2
Código:
anchoreal=screen.availWidth;
altoreal=screen.availHeight;
  #3 (permalink)  
Antiguo 30/04/2005, 11:58
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola FuLaNo_ y xp64

con screen.availWidth y screen.availHeight se obtiene la resolución del monitor, no el tamaño de la ventana. Se puede usar ese código, pero solo funciona en IE:

ancho=body.offsetWidth;
alto=body.offsetHeight;

Saludos,
  #4 (permalink)  
Antiguo 30/04/2005, 15:26
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 21 años, 6 meses
Puntos: 2
JavierB

En teoría tendría que hacer una función con un timer verdad? para que el timer compruebe a cada instante el tamaño de la pantalla?

Igualmente no me ha convencido de que solo funcione en IE, estoy tratando de hacer que la Web sea accesible desde los navegadores mas importantes y si esto falla me quedaría una table encima de otra...

Mas vale hago que el div quede siempre en "left:880" y listo, si el usuario achica la pantalla solo verá la scroll horizontal.

Si alguien conoce algun metodo que funcione en IE, Firefox, Opera y demás, avise!

Saludos y gracias a ambos.
__________________
I Love Programming...
  #5 (permalink)  
Antiguo 01/05/2005, 06:11
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola de nuevo.

En vez de usar un times, puedes usar el evento onresize

<body onresize="tufuncion()">

Además he visto que es mejor usar ancho=document.body.offsetWidth;

En firefox funciona el width, pero no el heigth que al parecer da el tamaño de la página según el contenido que tenga. A mí también me gustaría saber si hay alguna propiedad equivalente. Esperemos que alguien nos pueda iluminar sobre este tema.

Saludos,
  #6 (permalink)  
Antiguo 01/05/2005, 15:39
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 21 años, 6 meses
Puntos: 2
Hola gente:

Bueno, despues de probar varias veces logré que se vea bien en IE (6) y firefox, el problema es que no tengo como probarlo en Opera y netscape...

El codigo es:

Código:
function google_resize() {
    Width_actual = document.body.offsetWidth;
    browser = navigator.appName;
    if (browser == "Microsoft Internet Explorer") {
      Width_google = document.body.offsetWidth - 144;
      Width_max = 1019;
    }
    if (browser == "Netscape") {
      Width_google = document.body.offsetWidth - 124;
      Width_max = 1000;
    }
    if (Width_actual <= Width_max) {
      document.getElementById('banner_resol').style.left=Width_google;
      document.getElementById('banner_resol').style.visibility='hidden';
    }
    if (Width_actual >= Width_max+1){
      document.getElementById('banner_resol').style.left=Width_google;
      document.getElementById('banner_resol').style.visibility='visible';
    }
}
Notarán que use todos IF y no ELSE ya que no se porque razon con este ultimo me daba error... en fin, seguire probando.

Tambien tuve problemas con document.layers, queria usar este ya que para netscape se usa, pero firefox me tiraba error, me decia que use la getElementById() como dice w3...

Saludos y mil gracias!
__________________
I Love Programming...
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 18:46.