ASP.NET - Alto del navegador con explorer 7

   
Vista:

Alto del navegador con explorer 7

Publicado por Javi Moreno (4 intervenciones) el 04/04/2008 16:33:48
Tengo un problema al calcular el alto de la venta que solo me ocurre con las páginas aspx y con Explorer 7.
Tengo una aplicación que funcionaba perfectamente hasta que empiezo a utilizar explorer 7.
Es una pagina asp.net que contiene un javascript que obtiene el ALTO de la VENTANA. Luego en funcion de las dimensiones de la ventana se coloca el contenido de la página.

El alto lo obtengo con este script:

function getHeight(){
if (parseInt(navigator.appVersion)>3)
{
if (navigator.appName=="Netscape")
{ return window.innerHeight; }
if (navigator.appName.indexOf("Microsoft")!=-1)
{
return document.body.offsetHeight;
}
}
}

Ahora viene lo curioso y raro: En Explorer 6, mozilla y demás funciona perfectamente

En Explorer 7 funciona perfectamente si incluyo la funcion en una página html.
Pero en Explorer 7 si llamo esta función desde una página ASPX en vez de devolver el Alto de la ventana me devuelve el alto del documento:
Si es una página vacia =0
Si solo tiene una frase la altura de esa frase independientemente del alto que tenga la ventana del navegador.

He probado con páginas Vacias, solo con un "alert(document.body.offsetHeight);"
y me confirman el problema: en los aspx no se puede averiguar el alto de las ventanas (al menos no igual que explorer 6)

Buscando por internet parece que soy el único pringado que tiene ese problema porque no encuentro ninguna referencia al mismo.

Aver Si algien tiene alguna idea de lo que hablo puede ayudarme porque a mi se me acaban los recursos.

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Alto del navegador con explorer 7

Publicado por Solucionado (4 intervenciones) el 07/04/2008 10:13:03
Finalmente encontré la solución:

sustitui en la función
document.body.offsetHeight

por

document.body.parentNode.offsetHeight

Funciona perfectamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar