naturaleza del problema:
primero detecto la altura del frame en el que quiero colocar una tabla con el siguiente código (localizado en la red), al que le resto 300 px correspondientes a los otros elementos que existen en la ventana (frame superior e inferior):
<script>
if (window.innerHeight){
//navegadores basados en mozilla
hmainframe = window.innerHeight - 300
}else{
if (document.body.clientHeight){
//Navegadores basados en IExplorer, es que no tengo innerheight
hmainframe = document.body.clientHeight - 300
}else{
//otros navegadores
hmainframe = 500
}
}
</script>
Ahora querría utilizar esa variable (hmainframe) como altura (height) de la tabla, donde utilizo un div style para que incorpore un scroll a la derecha:
<div style="overflow: auto; width:100%; height:hmainframe">
Pero así no reconoce el contenido de la variable.
Lo he resuelto de la siguente forma:
Defino una clase en código javascript, y simplemente la utilizo después por su nombre (alturaMF):
<script>
// Determina la altura disponible para definir la que corresponde a mainFrame
if (window.innerHeight){
// Mozilla
hmainframe = window.innerHeight - 300
}else{
if (document.body.clientHeight){
// iExplorer (no reconoce innnerHeight
hmainframe = document.body.clientHeight - 300
}else{
// Otros navegadores
hmainframe = 500
}
}
// Define la clase alturaMF
document.write("<div class='alturaMF' style='overflow:auto; width:100%; height:"+hmainframe+";'>");
</script>
<div class="alturaMF">aquí el contenido al que se le asigna la clase</div>
En realidad esto lo puse como duda para la que pedía ayuda.
Ahora dejo la solución por si a alguien más le resulta útil.
Si no os parece interesante, por favor, que un moderador lo elimine sin más.
Disculpad las molestias