Comunidad de diseño web y desarrollo en internet online

Pop Up no intrusivos

Citar            
MensajeEscrito el 28 Nov 2008 07:44 pm
Siguiendo el tutorial de Dientuki publicado en CLAB consegui lo que buscaba e incluso mása. Pero al probar la función en IE esta no funcionaba :twisted: .
El código en cuestión es el siguiente:

Código :

function mostrar() { 
   $("#pop").fadeIn('slow'); 
} //checkHover
$(document).ready(function (){
   //Conseguir valores de la img 
   var img_w = $("#pop img").width(338) + 10; 
   var img_h = $("#pop img").height(205) + 28; 
    
   //Darle el alto y ancho 
   $("#pop").css('width', img_w + 'px'); 
   $("#pop").css('height', img_h + 'px'); 
    
   //Esconder el popup 
   $("#pop").hide();
    //Consigue valores de la ventana del navegador 
   var w = $(this).width(338); 
   var h = $(this).height(205); 
    
   //Centra el popup    
   w = (w/2) - (img_w/2); 
   h = (h/2) - (img_h/2); 
   $("#pop").css("left",w + "px"); 
   $("#pop").css("top",h + "px");
   //temporizador, para que no aparezca de golpe 
   setTimeout("mostrar()",3000);
   //Función para cerrar el popup 
   $("#pop").click(function (){ 
      $(this).fadeOut('slow'); 
     
   });
     })
function cerrar() { 
   $("#pop").fadeOut('slow'); 
} //checkHover
$(document).ready(function (){
   //Conseguir valores de la img 
   var img_w = $("#pop img").width(338) + 10; 
   var img_h = $("#pop img").height(205) + 28; 
    
   //Darle el alto y ancho 
   $("#pop").css('width', img_w + 'px'); 
   $("#pop").css('height', img_h + 'px'); 

    //Consigue valores de la ventana del navegador 
   var w = $(this).width(338); 
   var h = $(this).height(205); 
    
   //Centra el popup    
   w = (w/2) - (img_w/2); 
   h = (h/2) - (img_h/2); 
   $("#pop").css("left",w + "px"); 
   $("#pop").css("top",h + "px");
   //temporizador, para que se cierre automáticamente luego de .... mili segundos 
   setTimeout("cerrar()",25800);
   //Función para cerrar el popup 
   $("#pop").click(function (){ 
      $(this).fadeOut('slow'); 
     
   });
     })

Hoy estoy entregado y he dejado de usar esa función aunque es exactamente lo que necesitaba. En estos momentos estoy usando un simple pop up no intrusivo pero sin ninguna de las funciones que tan bien explicó Dientuki.
Si alguien puede ayudarme a desasnar una vez más los problemas de IE para que el pop up no intrusivo abra y cierre con un temporizador....le estaré muy agradecido. ^^ .




Saludos!

Por marcelonologo

Claber

311 de clabLevel


2 articulos

 

Patagonia Argentina

firefox
Citar            
MensajeEscrito el 28 Nov 2008 09:01 pm
Explicaré en detalle cual era el problema que tenia y al que le encontré una solución cambiando la forma.
Mi intención era colocar un pop up no intrusivo en la portada de un sitio x, el cual deíia abrirse y cerrarse con un tiempo determinado.
Con la función que describía mi compatriota Dientuky creí encotrar la solución - dato importante el pop up conteia un swf - , pero como ya saben y describí más arriba la función java no andaba en IE.
Luego de darme de topetazos con los códigos ví la luz. Hacer toda las función en el flash que contenia el div popup.
Para temporizar la salida y entrada del pop up deje frames vacios en la escena 1 y en la escena 3 con los tiempos que yo necesitaba, mientras que en la escena 2 estaba todo el contenido, hasta de hecho le realize fade in y fade out en las escena 1 y 3, más el botón que cierra el div pop up.

En java el código para cerrar el div pop up es el siguiente:

Código :

function closeDiv()
{
var divObj = document.getElementById("popup");
divObj.style.visibility = "hidden";
}


Y en el botón flash que cierra el div el código AS:

Código :

on(release){
getURL("javascript:closeDiv();", "_self");
} 


Pero una vez conseguido el resultado quice mejorarlo e hize que el botón en lugar de cerrar el pop up bruscamente, queria que me llevara a el frame del fade out de la escena 3 y en el último frame coloque el AS:

getURL("javascript:closeDiv();", "_self");

Todo salió perfecto, es una solución creativa a una función que debería haber funcionado tal cual lo explicó Dientuki, pero que por la ineficiencia de IE no andaba. Una de tantas que nos pasan.

Saludos

Por marcelonologo

Claber

311 de clabLevel


2 articulos

 

Patagonia Argentina

firefox
Citar            
MensajeEscrito el 29 Nov 2008 03:52 am

Por lazopoliz

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 Mar 2010 02:53 pm
Pucha no entendi bien donde poner esos codigos que diste... me podrias explicar mas especifico. Ahora otra consulta tu sabes como abrir una div pa desde flash.
Gracias de antemano. :P

Por bpereira

1 de clabLevel



 

safari
Citar            
MensajeEscrito el 25 Mar 2010 04:42 pm
Hola, como cualquier función javascript puede ponerla en el mismo html en el que quieres que funcione o hacer un archivo js y llamarlo desde el html. En cuanto a la función de flash apra abrir supongo que es la misma que para cerrar pero con la función abrir. Seguro en CLAB encuentraas varios ejemplos.

Saludos

Por marcelonologo

Claber

311 de clabLevel


2 articulos

 

Patagonia Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.