Ver Mensaje Individual
  #7 (permalink)  
Antiguo 08/07/2008, 00:58
Avatar de gepd
gepd
 
Fecha de Ingreso: diciembre-2007
Mensajes: 142
Antigüedad: 17 años, 2 meses
Puntos: 6
Respuesta: Propuesta Depuración de Códigos, No Librerias!

Ahora que tengo un poco más de tiempo y encontrandome con un código que dá el primer paso para crear un div transparante de fondo a partir de una funcion javascript, lo he modificado, y ahora ya crea el fondo y un div en el centro de fondo blanco con un mensaje a continuacion les dejo el código:

Código:
function generaDiv(id,color,opacity,ancho,alto,msj){
    var navegador=1;
    if(navigator.userAgent.indexOf("MSIE")>=0) navegador=0;
        var layer=document.createElement('div');
            layer.id=id;
            layer.style.width='100%';
            layer.style.height='100%';
            layer.style.backgroundColor=color;
            layer.style.position='absolute';
            layer.style.top=0;
            layer.style.left=0;
            layer.style.zIndex=100;
        
        var wds=document.createElement('div');
            wds.id=id+navegador;
            wds.style.position="absolute";
            wds.style.width=ancho+"px";
            wds.style.height=alto+"px";
            wds.style.top="50%";
            wds.style.left="50%";
            wds.style.marginLeft=(-ancho/2)+"px";
            wds.style.marginTop=(-alto/2)+"px";
            wds.style.textAlign="center";
            wds.style.backgroundColor="#FFFFFF";
            wds.style.zIndex=200;
            wds.innerHTML=msj;
    if(navegador==0)
        layer.style.filter='alpha(opacity='+opacity+')';
    else
        layer.style.opacity=opacity/100;
        document.body.appendChild(layer);
    var div = document.getElementById(id);
        div.appendChild(wds);
} 
Ésta sería la función.

Código:
generaDiv('fon','#000000','50',400,200,'Mensaje'); 
Aquí un ejemplo de como utilizarlo, fon es el nombre que le daremos a nuestro div, luego viene el color de fondo, la opacidad, ancho, alto, y el mensaje que queremos que aparezca. Por defecto el segundo div su nombre sería según el navegador.

En explorer: fon0
Firefox:font1

pueden cambiar ésto en ésta linea para modificar ésto:

wds.id=id+navegador;

Funcionando, en Firefox 2, 3 IE 7,8 Supongo que funcionará tambien en Opera.

Estoy buscando como poder crear el div que contiene el mensaje dentro de otro div para poder centrarlo verticalmente, si hay sugerencias avisarme para hacer las respectivas pruebas...

Saludos
Fuente de la función original