Este es un polémico tema, ¿Pueden las popup ser buenas? Depende de las circunstancias bajo las cuales se usan. Algo sí es seguro, un popup desde el arranque de una web, es mortal, así que repite conmigo NO DEBO PONER MI WEB EN UN POPUP. La razón de que mucha gente lo haga es porque creen que está bien. Muchos sitios web de películas de moda lo hacen, luego entonces, debe estar bien, ¿No?
Una explicación detallada ya se ha discutido en cientos de ocasiones en foros de diseño y desarrollo web. Todo se resume en una frase, PORQUE ARRUINAN LA EXPERIENCIA DEL USUARIO. Sin embargo, hay ocasiones en que realmente son necesarias, mencionemos algunos casos:
- Cuando necesitamos mostrar datos adicionales que ya no caben en nuestro diseño o que de hacerlo, desordenarían todo el diseño
- Cuando queremos llevar al usuario a que haga ciertas acciones, sin que se salga de la página actual (si, ya sé que para eso existe AJAX, pero no todos lo usan)
- Para mostrar un aviso, del cual el usuario está conciente que tendrá una ventana popup
¿Cómo podemos crear este tipo de cosas sin arruinar la vida al usuario? La respuesta está por supuesto en los estándares web. Lo primero que haremos, será crear en donde queramos de nuestro HTML un capa (div), donde colocaremos lo que necesitemos mostrar, por ejemplo:
Código :
<div id="popup">
<p>Soy un popup flotante. puedes <a href="javascript: cerrarPopup('popup');">cerrarme</a> si quieres</p>
</div>Es importante notar el nombre del id de la capa, que será usado como parámetro en una función javascript que aún no hemos creado. lo siguiente será hacer el estilo correspondiente para nuestra popup. Un simple ejemplo:
Código :
#popup
{
position: absolute;
border: 1px solid #666666;
background-color:#F7F7F7;
width: 200px;
height: 100px;
margin-top: 50px;
}La posición de nuestro elemento debe ser absolute, a partir de aquí, podremos manejar con margin la posición actual de nuestra capa. Para evitar el problema de las resoluciones, es más que recomendable usar porcentajes y condicionales de Internet Explorer (IE), pues una de las malas costumbres de IE (firefox RLZ!) es interpretar el margin a su manera. Cuestión de experimentar. La dimensión de la ventana ya depende de nuestras necesidades. Este es el javascript necesario para hacer que nuestra ventanita se cierre:
Código :
function cerrarPopup(pid)
{
document.getElementById(pid).style.visibility = 'hidden';
}La variable pid, contiene la id de la capa que estamos usando, importante notar que getElementById es una colección que permite manipular un elemento usando su id (de ahí su nombre), luego invocamos a la propiedad visibility y le asignamos el valor hidden para que la capa se oculte. Con eso, tenemos una ventana popup no intrusiva y que además no genera una nueva ventana en nuestra barra de tareas, importante señalar para que realmente no sea una molestia a nuestro usuario:
- La ventana debe tener el tamaño exacto de lo que vamos a mostrar
- La ventana NO DEBE TAPARLE INFORMACIÓN IMPORTANTE al usuario
- No debemos abusar tampoco de está técnica, ya que se volvería inservible y volveremos a lo mismo de siempre
- El posicionamiento de la ventana queda a nuestro criterio, pero debemos siempre recordar el punto 2
Ver el ejemplo

Saludos
Por eleuterio el 23 de Diciembre de 2006
Por falsen el 23 de Diciembre de 2006
Por Alex el 27 de Diciembre de 2006
Por xBrYaNx el 18 de Enero de 2007
Respecto a lo de mover el popup solo es un pococ de JavaScript
Por Rodrigo el 15 de Febrero de 2007
Código :
function abrirPopup(pid) { document.getElementById(pid).style.visibility = ''; }y hacer un enlace como este
Código :
<a href="javascript: abrirPopup('popup');">abrir</a>Por newcomer el 26 de Marzo de 2007
Por el 26 de Marzo de 2007
newcomer_blog :
es un lenguaje de programación que utiliza scripts y que funciona o se ejecuta en el rodenador del cliente, es decir, el de la persona que navega por internet.
Por Hardy el 29 de Marzo de 2007
BUENO COMO HAGO PARA COLOCAR UN POP PERO HECHO EN FLASH.. UN AVEZ INGRESO EL POPUP EN FLASH COMO LO HAGO PARA QUE ESE POPUP EN FLASH CAMBIE ALEATORIAMENTE CON OTROS.. gracias espero me ayuden..
Salu2
Por Roberto el 29 de Marzo de 2007
espero su respuesta gracias
Por sgtPeper el 30 de Abril de 2007
Alguna idea de cómo meter, por ejemplo, tres pops y generar sus id´s de manera dinámica, para no crear 3 estilos diferentes y tres javas diferentes???
GRax.
Por Anastacia57 el 09 de Mayo de 2007
Por zelgadiss01 el 11 de Mayo de 2007
Alguna idea de cómo meter, por ejemplo, tres pops y generar sus id´s de manera dinámica, para no crear 3 estilos diferentes y tres javas diferentes???
pues... puedes hacer algo como flash, si mal no recuerdo javascript tiene la opcion de hacer un eval, con lo cual solo le mandarías como parámetro la(s) opcion(es) de la(s) ventana(s), teniendo en cuenta que las ventanas comparten caracteristicas semejantes, pero, eso de crear 3 estilos diferentes y tres javaScript diferentes... creo que de al menos el de los estilos no te salvas, a menos que uses opciones generales o un estilo/javascript que contenga las opciones de las tres ventanas, o generarlo con algún lenguaje de servidor como PHP, ASP, JSP.
es cierto que hay algunos navegadores que restringen popups en Java Script??
Si.. la mayoría de los nuevos navegadores incluyen la opcion para bloquear las ventanas emergentes, puesto que es muy molesto que estés navegando por una pagina web y al cambiar de pagina o al estar en ella muchas de las ocasiones abren como mil ventanas emergentes solo para hacerte publicidad.... no se a quien se le ocurrió eso
y tb se puede generar popups en Php??
No y si.. puede ser un poco confuso, pero con PHP puro no puedes generar un pop up, puesto que PHP funciona solo del lado del servidor y no del cliente... osea, PHP no sabe que tu capturaste algún dato hasta que tu le mandes los datos al servidor, entonces para "mejorar" la experiencia del usuario puedes hacer algunos "trucos" como dependiendo de los datos que ingresó mostrar ciertos elementos o dejar de mostrarlos, pero dentro de PHP puedes ir agregandole codigo JavaScript que es estático al momento de estar procesando la pagina.. osea.. imagina algo como esto, si el usuario es mujer, entonces carga un Javascript para ella, si no pues carga un Javascript para el, pero, si quieres ventanas emergentes... lo que tienes que hacer es usar Javascript.
quisiera uno para mostrar imagenes en una determinada posicion de mi ventana sin q varie de acuerdo a las resoluciones de pantalla
Eso lo puedes hacer con CSS, las cuales pueden ser configuradas para que muestren los objetos independientemente de la resolucion y aparte te permiten hacer que tu pagina se vea bien, sin necesidad de sobrecargarla.
Saludos.
Por artu el 03 de Junio de 2007
Por Ma el 09 de Junio de 2007
Me explico: Tengo varios enlaces y entonces quiero que se me abra el DIV cuando pulse sobre un enlace y que ese DIV se me coloque al lado del enlace que pulsé.
Gracias.
Por Fliper el 18 de Julio de 2007
Seguiré viendo por ahí que dice la gente!!
Si alguien discrepa que por favor lo escriba. Muchas gracias
Por Jeronimo el 02 de Noviembre de 2007
Por rawl el 21 de Diciembre de 2007
Por birratix el 15 de Junio de 2008
Al estilo de muchas galerias de fotos por ejemplo...
Gracias de antemano
Por Dario el 14 de Enero de 2009
perdon mi ignorancia pero como dije en
otros post estoy recien conociendo este
mundillo, si bien tengo mucho tiempo mas, recien tengo 15 años y ya tengo mi web 1313
jaja me gustaria que la vieran:
http://maniatics-doll.es.tl/
Si bien, a mi punto de vista es muy basica, quiero mejorarla pero hay cosas que no entiendo o por mas que las intente no me funcionan o no tengo los medios necesarios para hacerlo.
Saludos y gracias al q me ayude despues
Por wraven el 25 de Febrero de 2009
Por Squadron el 27 de Marzo de 2010
Por Squadron el 27 de Marzo de 2010
Por Sarc190 el 20 de Abril de 2010
Por Gonzalo el 30 de Abril de 2010
Por Kompañero el 20 de Mayo de 2010
Por gaston el 14 de Junio de 2010
intete de hacer lo siguiente.
<div id="popup">
<p> <?php wp_swfobject_echo("http://paginaWeb/animacionFlash.swf", "200", "267"); ?>
pi pi pi flash? <a href="javascript: cerrarPopup('popup');">cerrarme</a> si quieres</p>
</div>
aparece re bien, pero cierrio y se queda el flash....
algun consejo?
Por yair el 12 de Diciembre de 2010
Por Sergio Sanchez el 23 de Julio de 2011