¿Cómo crear: menú de búsqueda
- Página anterior Barra de navegación con iconos
- Página siguiente Barra de búsqueda
Aprende a usar JavaScript para crear un menú de búsqueda que filtre enlaces.
Buscar/Filtrar menú
¿Cómo buscar enlaces en el menú de navegación?
Contenido de la Página
Escribe una categoría/enlace específica en la barra de búsqueda para "filtrar" las opciones de búsqueda.
Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...
Alguno de otro texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...Alguno de texto...
Alguno de texto...
Crear el menú de búsqueda
Paso 1 - Añadir HTML:
<input type="text" id="mySearch" onkeyup="myFunction()" placeholder="Buscar.." title="Escribe una categoría"> <ul id="myMenu"> <li><a href="#">HTML</a></li> <li><a href="#">CSS</a></li> <li><a href="#">JavaScript</a></li> <li><a href="#">PHP</a></li> <li><a href="#">Python</a></li> <li><a href="#">jQuery</a></li> <li><a href="#">SQL</a></li> <li><a href="#">Bootstrap</a></li> <li><a href="#">Node.js</a></li> </ul>
Nota:En esta demostración, utilizamos href="#"
debido a que no tenemos páginas enlazables. En la práctica, debería ser una URL real que apunte a una página específica.
Segundo - Añadir CSS:
Establecer los estilos del cuadro de búsqueda y del menú de navegación:
/* Estilos del cuadro de búsqueda */ #mySearch { width: 100%; font-size: 18px; padding: 11px; border: 1px solid #ddd; } /* Estilos del menú de navegación */ #myMenu { list-style-type: none; padding: 0; margin: 0; } /* Estilos de los enlaces de navegación */ #myMenu li a { padding: 12px; text-decoration: none; color: black; display: block } #myMenu li a:hover { background-color: #eee; }
Tercero - Añadir JavaScript:
<script> function myFunction() { // Declaración de variables var input, filter, ul, li, a, i; input = document.getElementById("mySearch"); filter = input.value.toUpperCase(); ul = document.getElementById("myMenu"); li = ul.getElementsByTagName("li"); // Recorrer todos los elementos de la lista y ocultar aquellos que no coinciden con la consulta de búsqueda for (i = 0; i < li.length; i++) { a = li[i].getElementsByTagName("a")[0]; if (a.innerHTML.toUpperCase().indexOf(filter) > -1) { li[i].style.display = ""; } else { li[i].style.display = "none"; } } } </script>
Consejo:Si desea realizar una búsqueda sensible a mayúsculas y minúsculas, elimine toUpperCase()
.
Páginas relacionadas
Tutoriales:Cómo filtrar tablas
Tutoriales:¿Cómo filtrar la lista
- Página anterior Barra de navegación con iconos
- Página siguiente Barra de búsqueda