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:
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
Interesante artículo, un ejemplo de esto es la misma CLab, cuando tenemos algun mensaje privado y entramos aquí. Lo veo muy util, gracias por el articulo. Saludos Por:Johnny
Pues me parece bueno, pero por ejemplo,estoy navegando con firefox, y al pulsar el ejemplo no me abre un popup, sino un vínculo en _blank Por:eleuterio_blog
Muy bueno! Por:falsen_blog
Está bueno, pero que hay si queremos abrir la popup al presionar un boton, como seria el codigo(debe ser lo contrario a hide) pero si queremos tener la capacidad de mover la popup. Por:Alex_blog
Esto es muy muy bueno =)
Respecto a lo de mover el popup solo es un pococ de JavaScript Por:xBrYaNx_blog
para poder abrir otra ventana hay que añadir otra funcion javascript:
Código :
function abrirPopup(pid) { document.getElementById(pid).style.visibility = ''; }
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:
Hola amigos.. esta muy bueno el popu flotante me facilitará muchisimo para mi web.. pero tengo una duda.. ahi les va: 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:Hardy_blog
uhmm muy buena tu preguunta amigo Hardy .. en verdad como se puede hacer para crear un POPUP en flash y que cambie aleatoriamente cada vez que cargue la pagina con otros. espero su respuesta gracias Por:Roberto_blog
El ejemplo esta muy bueno. Felicidades.
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:sgtPeper_blog
Hola: disculpen la molestia hablando de popups es cierto que hay algunos navegadores que restringen popups en Java Script?? y tb se puede generar popups en Php?? quisiera uno para mostrar imagenes en una determinada posicion de mi ventana sin q varie de acuerdo a las resoluciones de pantalla, bueno graciass adioss Por:Anastacia57_blog
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 , en fin...
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:zelgadiss01
hola oie no entiendo . mira esos codigos para q son ah??.....a y otra cosa haber si alguien me responde quiero poner publicidad en mi pagina web sin q me paguen solo quiero q lusca bien y que este xvr nomas....eso es.. todo Por:arturo666
Cómo se podría abrir el DIV exactamente donde haga click en el enlace??
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:Mario54
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... Discrepo con esta frase. Claro está que si hablamos de un web site por el que navegar estoy de acuerdo, pero que pasa si se trata de una APLICACION WEB?? No se debería permitir al usuario navegar con la barra de herramientas porque eso puede romper la lógica de navegación de la aplicación y la unica manera que se me ocurre es un popup desde el arranque de la web para evitar estas barras de navegación y que el usuario no pueda hacer uso de ellas. Seguiré viendo por ahí que dice la gente!! Si alguien discrepa que por favor lo escriba. Muchas gracias Por:Fliper_blog
te amo... jajajajja gracias! me salvaste la vida Por:Jeronimo_blog
como le puedo hacer para que el popup salga de abajo como las ventanitas del messenger Por:rawl_blog