Tecnología

Inicio

Diseño de menú en Javascript

JavaScript es un lenguaje de Web integrado en todos los principales navegadores que se puede utilizar para hacer sus páginas web hacen un montón de truquitos. El diseño de menú de navegación de un sitio web es una de las cosas más comunes que se pueden utilizar JavaScript para hacer, y ya que es relativamente fácil de hacer, es una forma común para los principiantes a aprender el idioma. Si ya está familiarizado con HTML y CSS, usted encontrará que es fácil de insertar JavaScript en su código y crear páginas limpias, compatibles con los estándares.

Fundación de JavaScript diseño del menú

Usar el menú JavaScript utiliza dos herramientas simples: \ "onmouseover, \", que desencadena un evento que ocurra cuando se mueve el puntero del ratón sobre algo, y \ "onmouseout, \", que desencadena un evento que ocurra cuando el puntero del ratón va a otra parte.

Digamos que tenemos un menú de navegación en la parte superior de nuestra página con dos artículos, \ "sobre \" y \ "temas. \" Cuando alguien se cierne ya sea elemento de la lista, queremos un submenú para que aparezca debajo lista más opciones. Así que tenemos que crear dos funciones: una que permite que un menú que aparezca debajo de cada elemento utilizando \ "onmouseover, \" y uno que permite que el menú desaparezca usando \ "onmouseout \".

Para ello, tenemos que añadir el siguiente código JavaScript en la sección <head> de la página:

<Script type = \ "text / javascript \">
// <! [CDATA [

la función de ocultar (menú) {
var menuStyle = document.getElementById (menú) .style
IR
menuStyle.display = \ "no \"
IR
}

función de presentación (menú) {
var menuStyle = document.getElementById (menú) .style
IR
menuStyle.display = \ "bloque \"
IR
}

//]]>
</ Script>

Las dos primeras líneas y las dos últimas líneas simplemente declaran que la sección de su documento en el medio va a utilizar JavaScript. El código en el medio crea dos funciones llamadas \ "ocultar \" y \ "show. \" Cada función primero crea una variable llamada \ "menuStyle, \" que reconoce un menú por su ID y, a continuación, cambia el estilo de ese menú establecer que se muestre = \ display = \ "no \" o está bien si aún no está del todo claro "bloqueo \."; Una vez que vea en acción, usted será capaz de entenderlo mejor.

También hay que añadir otro poco de JavaScript al final de sus páginas, antes de la etiqueta de cierre </ body>, que impide que los submenús aparezcan en la página por defecto:

<Script type = \ "text / javascript \">
// <! [CDATA [
ocultar ( 'submenú-1')
IR
ocultar ( 'submenú-2')
IR
//]]>
</ Script>

Esto utiliza la función \ "ocultar \" que acaba de crear para ocultar cada submenú. En este ejemplo, \ "submenú-1 \" y \ "submenú-2 \" son los identificadores de cada submenú.

Implementarlo en su HTML

Ahora que la fundación JavaScript está en su lugar, de hecho tienes que activarlo dentro de su HTML. En primer lugar, crear su sistema de menús HTML. La forma más limpia de hacerlo es con enlaces desordenadas incrustados dentro de la otra, así:

<Ul>
<Li> Acerca de
<Ul>
<Li> <a href=\"#\"> Bio </a> </ li>
<Li> <a href=\"#\"> Contacto </a> </ li>
</ Li>
</ Ul>

Ahora, se puede añadir \ "onmouseover \" y \ "onmouseout \" atribuye al alto nivel <li> etiquetas:

<Ul>
<Li onmouseover = \ "javascript: mostrar ( 'submenú-1') \" onmouseout = \ "javascript: ocultar ( 'submenú-1') \"> Sobre
<Ul>
<Li> <a href=\"#\"> Bio </a> </ li>
<Li> <a href=\"#\"> Contacto </a> </ li>
</ Li>
</ Ul>

Todo esto significa es que cuando alguien pasa por encima de \ "Acerca, \" la función \ "mostrar \" hará al submenú que aparezca debajo de ella. Cuando el ratón se aleja de \ "Acerca, \" la función \ "ocultar \" hará al submenú para desaparecer.

Poniendolo todo junto

Ahora que tiene el diseño en su lugar, es necesario pegarlo dentro de un documento completo y arreglar el diseño con un poco de CSS por lo que todas las pantallas correctamente. El siguiente ejemplo es una página completa que funciona como válido estricto código XHTML y utiliza algunos estilos básicos de CSS. Pegarlo en un editor de texto, guardarlo como un archivo HTML y abrirlo en un navegador Web para ver los resultados. Realizar cambios en el CSS como mejor le parezca, y trate de añadir otra opción de menú y submenú.

<! DOCTYPE html PUBLIC \ "- // W3C // DTD XHTML 1.0 Strict // EN \" \ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\&quot;>
<Html xmlns = \ "http://www.w3.org/1999/xhtml\&quot; dir = \" ltr \ "lang = \" es-ES \ ">

<Head>
<Meta http-equiv = \ "Content-Type \" content = \ "text / html; charset = UTF-8 \" />
<Title> Ejemplo de JavaScript Menú </ title>

<Style type = \ "text / css \">

cuerpo {
font-family: Georgia, sans-serif
IR
}

un {
color: # FF3A00
IR
text-decoration: none
IR
}

a: hover {
text-decoration: underline
IR
}

ul {
list-style-type: ninguno
IR
margin: 0
IR
padding: 10px
IR
}

li {
flotador izquierdo
IR
padding: 10px
IR
frontera: 1px #ddd sólida
IR
margin-left: 1px
IR
}

li ul {
position: absolute
IR
margen: 10px -11px
IR
frontera: 1px #ddd sólida
IR
}

li li {
float: none
IR
Margen: 0 5px
IR
Limpia los dos
IR
border: 0
IR
}

</ Style>

<Script type = \ "text / javascript \">
// <! [CDATA [

la función de ocultar (menú) {
var menuStyle = document.getElementById (menú) .style
IR
menuStyle.display = \ "no \"
IR
}

función de presentación (menú) {
var menuStyle = document.getElementById (menú) .style
IR
menuStyle.display = \ "bloque \"
IR
}

//]]>
</ Script>

</ Head>

<Body>

<Ul>

<Li onmouseover = \ "javascript: mostrar ( 'submenú-1') \" onmouseout = \ "javascript: ocultar ( 'submenú-1') \">
Acerca de
<Ul ID = \ "submenú-1 \">
<Li> <a href=\"#\"> Bio </a> </ li>
<Li> <a href=\"#\"> Contacto </a> </ li>
</ Ul>
</ Li>

<Li onmouseover = \ "javascript: mostrar ( 'submenú-2') \" onmouseout = \ "javascript: ocultar ( 'submenú-2') \">
temas
<Ul ID = \ "submenú-2 \">
<Li> <a href=\"#\"> Películas </a> </ li>
<Li> <a href=\"#\"> TV </a> </ li>
<Li> <a href=\"#\"> Música </a> </ li>
<Li> <a href=\"#\"> Teatro </a> </ li>
</ Ul>
</ Li>

</ Ul>

<Script type = \ "text / javascript \">
// <! [CDATA [
ocultar ( 'submenú-1')
IR
ocultar ( 'submenú-2')
IR
//]]>
</ Script>

</ Body>

</ Html>