Foros del Web » Programando para Internet » Javascript »

Menú como panel de YouTube

Estas en el tema de Menú como panel de YouTube en el foro de Javascript en Foros del Web. Hola gente del foro! Vengo con una consulta entre manos. Si alguno esta familiarizado con el panel de "Mis videos" de Youtube, se dará cuenta ...
  #1 (permalink)  
Antiguo 30/03/2011, 09:25
Avatar de [NiRVaNa]  
Fecha de Ingreso: abril-2004
Ubicación: Someplace In The Middle Of Nowhere!
Mensajes: 325
Antigüedad: 20 años
Puntos: 6
Pregunta Menú como panel de YouTube

Hola gente del foro!

Vengo con una consulta entre manos. Si alguno esta familiarizado con el panel de "Mis videos" de Youtube, se dará cuenta que hay una menu que se encuentra en la estructura del sitio, y que a medida que se va haciendo scroll down, se ubica en la parte superior del sitio de manera estatica.

En un primer estado se ve así:
http://img847.imageshack.us/i/capturafw1.png/

y a medida que se desciende así:
http://img35.imageshack.us/i/capturafw2.png/

Alguién me podría guiar de qué manera lograr esto? Supongo que debe ser en combinación con Javascript y Css...

Salu2.
__________________
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
  #2 (permalink)  
Antiguo 30/03/2011, 09:41
Avatar de laratik  
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 13 años, 11 meses
Puntos: 63
Respuesta: Menú como panel de YouTube

Creo que con solo CSS y la propiedad position:fixed; se puede lograr eso.
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.
  #3 (permalink)  
Antiguo 30/03/2011, 09:45
Avatar de [NiRVaNa]  
Fecha de Ingreso: abril-2004
Ubicación: Someplace In The Middle Of Nowhere!
Mensajes: 325
Antigüedad: 20 años
Puntos: 6
Respuesta: Menú como panel de YouTube

Si, eso sé como lograrlo. Justamente por eso no puse este thread en CSS.

A lo que voy es como hacer que en cierto "estado" el menú se encuentre embebido en el sitio, y que al descender se ubique en el top del sitio.

El ejemplo puede ver en "Mis videos" de la cuenta de uno en Youtube.
__________________
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
  #4 (permalink)  
Antiguo 30/03/2011, 11:33
Avatar de laratik  
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 13 años, 11 meses
Puntos: 63
Respuesta: Menú como panel de YouTube

Rápidamente se me ocurre esto:

Código HTML:
Ver original
  1. <div id="target">CONTENIDO</div>
  2. <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />

Código CSS:
Ver original
  1. #target {
  2.     background: #00F;
  3.     color:#FFF;
  4.     text-align: center;
  5.     width: 500px;
  6.     left: 50%;
  7.     margin-left: -250px;
  8.     margin-top: 200px;
  9.     position: absolute;
  10. }

Código Javascript:
Ver original
  1. function fijar()
  2. {
  3.     variable = document.getElementById("target").offsetTop;
  4.     window.onscroll = cambioScroll;
  5. }
  6.  
  7. function cambioScroll(e)
  8. {
  9.     if(document.body.scrollTop >= variable) {
  10.         document.getElementById("target").style.position = "fixed";
  11.         document.getElementById("target").style.marginTop = "0px";
  12.     } else {
  13.         document.getElementById("target").style.position = "absolute";
  14.         document.getElementById("target").style.marginTop = "200px";
  15.     }
  16. }

Claro que lo puedes mejorar, pero para dar una guia no creo que este mal.
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.
  #5 (permalink)  
Antiguo 30/03/2011, 11:38
Avatar de [NiRVaNa]  
Fecha de Ingreso: abril-2004
Ubicación: Someplace In The Middle Of Nowhere!
Mensajes: 325
Antigüedad: 20 años
Puntos: 6
Respuesta: Menú como panel de YouTube

Una pregunta...

La función fijar en que momento debería ser llamada?
__________________
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
  #6 (permalink)  
Antiguo 30/03/2011, 11:45
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 18 años, 5 meses
Puntos: 87
Respuesta: Menú como panel de YouTube

Solo una vez, preferiblemente cuando cargue el documento...
  #7 (permalink)  
Antiguo 30/03/2011, 12:10
Avatar de [NiRVaNa]  
Fecha de Ingreso: abril-2004
Ubicación: Someplace In The Middle Of Nowhere!
Mensajes: 325
Antigüedad: 20 años
Puntos: 6
Respuesta: Menú como panel de YouTube

Muchisimas Gracias @laratik y @InKarC...

Funciona de maravilla! :D
__________________
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
  #8 (permalink)  
Antiguo 30/03/2011, 12:20
Avatar de laratik  
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 13 años, 11 meses
Puntos: 63
Respuesta: Menú como panel de YouTube

Cita:
Iniciado por InKarC Ver Mensaje
Solo una vez, preferiblemente cuando cargue el documento...
Se me había pasado colocar el body del html, gracias por contestar por mi.
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.

Etiquetas: panel, youtube
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 02:09.