Como creo que mi planteamiento de utilizar una clase para solventar el problema es incorrecto he intentado otra sin clases, solo haría falta que me digaís donde he de corregir la sintaxis, pero creo que el concepto es correcto.
Código PHP:
function crear_ventana(nombre, ancho, alto)
{
divprincipal = document.createElement(div); //Creamos un elemento div
divprincipal.setAttribute(Id) = nombre; //Le asignamos como Id el parámetro nombre.
//Creamos sus dos divs hijos.
hijoprincipal = divprincipal.appendChild(div);
hijoprincipal.setAttribute(Id) = fondo;
//No se si esta forma es la adecuada para asignar propiedades de estilo css en un objeto dom.
hijoprincipal.style.position = absolute;
hijoprincipal.style.background-color = #CCCCCC;
hijoprincipal.style.opacity = 0.5;
hijoprincipal.style.filter = alpha(opacity=50);
hijoprincipal.style.height = 100%;
hijoprincipal.style.width = 100%;
hijosecundario = divprincipal.appendChild(div);
hijosecundario.setAttribute(Id) = contenido;
hijosecundario.style.position = absolute;
hijosecundario.style.background-color = #FFFFFF;
hijosecundario.style.height = alto px;
hijosecundario.style.widht = ancho px;
//No se si esta es la forma sintacticamente correcta de añadir el simbolo menos y el px de pixeles a un valor de estilo mediante javascript :S
hijosecundario.style.margin-left: -(ancho/2)px;
hijosecundario.style.margin-top: -(alto/2) px;
}
function cerrar_ventana(nombre)
{
ventana = document.getElementById(nombre);
ventana.style.visibility = hidden;
}
function abrir_ventana(nombre)
{
ventana = document.getElementById(nombre);
ventana.style.visibility = visible;
}
Suponiendo que lo anterior pudiera dejarse sintacticamente bien solo faltaría encontrar la forma de meter dentro del div "contenido" el codigo html que quisieramos, pero eso no se como hacerlo, me suena innetHtml o algo así, pero creo que no es la forma correcta de hacerlo, así que espero algo de ayuda :S