Sliding Top Menu es un excelente recurso desarrollado con jQuery que permite implementar contenido deslizante.
Es ideal para usarlo en menúes o texto de ayuda/informativo y cuadros de logueo (ingreso de usuarios registrados). Con este podemos agregar botones que deslicen mostrando u ocultando el contenido.
Implementarlo es muy secillo, solo se requieren 3 pasos:
Primer paso: HTML
<div id="sliderWrap">
<div id="openCloseIdentifier"></div>
<div id="slider">
<div id="sliderContent">
Isn’t this nice?
</div>
<div id="openCloseWrap">
<a href="#" class="topMenuAction" id="topMenuImage">
<img src="open.png" alt="open" />
</a>
</div>
</div>
</div>
Segundo paso: CSS
<style type="text/css">
body {
margin: 0;
font-size:16px;
color: #000000;
font-family:Arial, Helvetica, sans-serif;
}
#sliderWrap {
margin: 0 auto;
width: 300px;
}
#slider {
position: absolute;
background-image:url(slider.png);
background-repeat:no-repeat;
background-position: bottom;
width: 300px;
height: 159px;
margin-top: -141px;
}
#slider img {
border: 0;
}
#sliderContent {
margin: 50px 0 0 50px;
position: absolute;
text-align:center;
background-color:#FFFFCC;
color:#333333;
font-weight:bold;
padding: 10px;
}
#header {
margin: 0 auto;
width: 600px;
background-color: #F0F0F0;
height: 200px;
padding: 10px;
}
#openCloseWrap {
position:absolute;
margin: 143px 0 0 120px;
font-size:12px;
font-weight:bold;
}
</style>
Detalle de la CSS:
- #slider tiene que ser posicionada absolutamente así, puede ser superpuesta al contennido;
- #slider tiene margen superior negativo (top-margin) el cual lo oculta;
- #sliderContent es posicionado absolutmamente para no interferir con los botones de abrir y cerrar;
- #openCloseWrap este también es posicionado absolutamente;
Tercer paso: jQuery / JavaScript
<script type="text/javascript">
$(document).ready(function() {
$(".topMenuAction").click( function() {
if ($("#openCloseIdentifier").is(":hidden")) {
$("#slider").animate({
marginTop: "-141px"
}, 500 );
$("#topMenuImage").html(’<img src="open.png"/>’);
$("#openCloseIdentifier").show();
} else {
$("#slider").animate({
marginTop: "0px"
}, 500 );
$("#topMenuImage").html(’<img src="close.png"/>’);
$("#openCloseIdentifier").hide();
}
});
});
</script>
Simplicidad, elegancia y con un efecto agradable que además agrega dinamismo y mejora la experiencia del usuario hacen de Sliding Top Menu uns interesante herramienta de desarrollo.