Foros del Web » Programando para Internet » Javascript »

Mostar y ocultar mensaje en el centro de pantalla

Estas en el tema de Mostar y ocultar mensaje en el centro de pantalla en el foro de Javascript en Foros del Web. Como puedo mostrar y ocultar mensajes en el centro de la pantalla al pasar el raton por una imagen. Este codigo me funciona pero quiero ...
  #1 (permalink)  
Antiguo 06/09/2009, 23:33
 
Fecha de Ingreso: agosto-2009
Mensajes: 193
Antigüedad: 14 años, 10 meses
Puntos: 0
Mostar y ocultar mensaje en el centro de pantalla

Como puedo mostrar y ocultar mensajes en el centro de la pantalla al pasar el raton por una imagen.

Este codigo me funciona pero quiero que el mensaje me aparezca y se oculte en el centro o en cualquier lado de la pantalla que defina.
-------------------------------------------------
<head>
<script language="JavaScript">
function mostrar(i) {
var texto = new Array(20)
if (i == 0)
texto ="Texto a Mostrar 01"

if (i == 1)
texto ="Texto a <br>Mostrar 02"

ventana.innerHTML=texto;
}
function ocultar() {
ventana.innerHTML=""
}
</script>
</head>
-----------------------------------------------------
<BODY>
<img src="imagen.jpg" onmouseover="javascript:mostrar(1)" onmouseout ="javascript:ocultar()" />
<div id="ventana"></div>
</BODY>
---------------------------------------------------
Dependiendo de la funcion mostrar(0) o mostrar(1).
Me mostrara el mensaje 01 o el 02.
Lo que no se, es como definir el div id="ventana" para que aparezca y desaparezca en el centro de la pantalla.

Muchas gracias
  #2 (permalink)  
Antiguo 07/09/2009, 04:27
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Hola

Esto no es javascript sino CSS

<div aling="center" id="ventana"></div>

Sierte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 07/09/2009, 04:33
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 7 meses
Puntos: 122
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Eso no es CSS...
__________________
twitter: @imbuzu
  #4 (permalink)  
Antiguo 07/09/2009, 06:38
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Cita:
Iniciado por buzu Ver Mensaje
Eso no es CSS...
ok, gracias por la corrección, tal y como está es html, pero es que en un principio pensé en aprovechar el id para usar estilos
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 07/09/2009, 06:55
 
Fecha de Ingreso: agosto-2009
Mensajes: 193
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

A ver: con esto no funciona.
<div aling="center" id="ventana"></div>
Esto lo haria solo en horizontal
----------------------------------------------------
Necesito si se puede en javascript hacer algo para definir mediante algun parametro que la etiqueta div id="ventana" que es la que se define en javascript
pinte y borre el texto en el centro de la pantalla en una ventana, creo que habra que dar algunas coordenadas, en javascript para que esa etiqueta la pinte en una ventana en el centro de la pantalla, tanto en vertical como en horizontal.
Pero eso no lo se hacer y por lo tanto lo pregunto.
  #6 (permalink)  
Antiguo 07/09/2009, 07:20
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Hola

Ese debería de haber sido la primera explicación. Prueba con esto

Código javascript:
Ver original
  1. var ancho = parseInt((screen.width) / 2)
  2. var alto = parseInt((screen.height) / 2)

a esto tendrás que restarle la mitad del ancho y del alto de la capa

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 07/09/2009, 07:59
 
Fecha de Ingreso: agosto-2009
Mensajes: 193
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

-----------------------------------------------------
La funcion mostrar ahora me queda asi.
---------------------------------------------------------------
function mostrar(i) {
var texto = new Array(20)
var ancho = parseInt((screen.width) / 2)
var alto = parseInt((screen.height) / 2)
if (i == 0)
texto ="Texto a Mostrar 01"

if (i == 1)
texto ="Texto a <br>Mostrar 02"

ventana.innerHTML=texto;
}
function ocultar() {
ventana.innerHTML=""
}
--------------------------------------------------------------
Pero al hacer la llamada a la funcion con este codigo.
<img src="imagen.jpg" onmouseover="javascript:mostrar(1)" onmouseout ="javascript:ocultar()" />
<div id="ventana"></div> Esta es la capa que se deberia pintar en una ventana en en centro.
--------------------------------------------------------------
Supongo que en alguna parte de la llamada a la funcion, tendre que decirle algo de esas dos variables que me has recomendado.
Para que la capa div id="ventana" la pinte en el centro.
------------------------------------------------------------------------
Con el codigo anterior que he puesto, no hace nada.
Lo pinta en la zona donde defino la capa, pero no en el centro.
Y ademas me desplaza todo lo que hay por debajo.
Me gustaria si es posible que pinte una ventana en el centro sin que desplace nada.
Como ya he comentado.
  #8 (permalink)  
Antiguo 07/09/2009, 11:24
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Hola

Prueba así

Cita:
function mostrar(i) {
var texto = new Array(20)
var ancho = parseInt((screen.width) / 2)
var alto = parseInt((screen.height) / 2)
document.getElementById("ventana").style.top = alto +"px";
document.getElementById("ventana").style.left = ancho +"px";


if (i == 0)
texto ="Texto a Mostrar 01"

if (i == 1)
texto ="Texto a <br>Mostrar 02"

ventana.innerHTML=texto;
}
function ocultar() {
ventana.innerHTML=""
}


<div id="ventana" style="position:absolute; top:0px; left:0px;z-index:1000;"></div>
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #9 (permalink)  
Antiguo 07/09/2009, 14:05
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 7 meses
Puntos: 122
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Solo aclarar que ese código no te va a poner el mensage en el centro de la ventana. De hecho, puedes obtener resultados totalmente inesperados. Haz la prueva:

1) haz la ventana de tu navagador más chica que tu pantalla, digamos que ocupe solo la mitad de la pantalla.

2) Pon la ventana del lado derecho de la pantalla.

3) Muevete sobre el elemento de modo que se dispare el efecto.

Ahora dime, es eso lo que quieres lograr?
Probablemente si, pero yo creo que no necesariamente.

El problema está en que estás usando la resolución para poder posicionar el elemento, pero no todos navegan con la ventana abierta a todo lo ancho de su monitor. Hay otras propiedades que puedes usar y que te dan un efecto más acorde. Por ejemplo, innerHeiight e innerWidth. El concepto es el mismo, solo cambian las propiedades que usas para calcular los valores de modo que sepas que estás calculando los valores correctos.
__________________
twitter: @imbuzu
  #10 (permalink)  
Antiguo 07/09/2009, 14:09
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Cita:
Iniciado por buzu Ver Mensaje
Solo aclarar que ese código no te va a poner el mensage en el centro de la ventana. De hecho, puedes obtener resultados totalmente inesperados. Haz la prueva:

1) haz la ventana de tu navagador más chica que tu pantalla, digamos que ocupe solo la mitad de la pantalla.

2) Pon la ventana del lado derecho de la pantalla.

3) Muevete sobre el elemento de modo que se dispare el efecto.

Ahora dime, es eso lo que quieres lograr?
Probablemente si, pero yo creo que no necesariamente.

El problema está en que estás usando la resolución para poder posicionar el elemento, pero no todos navegan con la ventana abierta a todo lo ancho de su monitor. Hay otras propiedades que puedes usar y que te dan un efecto más acorde. Por ejemplo, innerHeiight e innerWidth. El concepto es el mismo, solo cambian las propiedades que usas para calcular los valores de modo que sepas que estás calculando los valores correctos.
Si entramos en supuesto y usamos esas propiedades, entonces habrá que saber que navegador se está usando

Código javascript:
Ver original
  1. var ieNOTopera=document.all&&navigator.userAgent.indexOf("Opera")==-1
  2. function iecompattest() {
  3.     return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
  4. }
  5.  
  6. var window_height = ieNOTopera? iecompattest().clientHeight : window.innerHeight;
  7. var window_width = ieNOTopera? iecompattest().clientWidth : window.innerWidth;
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #11 (permalink)  
Antiguo 07/09/2009, 14:42
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 7 meses
Puntos: 122
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

por supuesto, pero me parece que es un pequeño paso, el cual ya has resuelto, que vale la pena tomar para asegurar un mejor efecto y no un completo desastre.
__________________
twitter: @imbuzu
  #12 (permalink)  
Antiguo 07/09/2009, 14:50
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Respuesta: Mostar y ocultar mensaje en el centro de pantalla

Cita:
Iniciado por buzu Ver Mensaje
por supuesto, pero me parece que es un pequeño paso, el cual ya has resuelto, que vale la pena tomar para asegurar un mejor efecto y no un completo desastre.
La verdad es que tienes razón. ¿Por qué quedarse a medias?
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:37.