Soy bastante nuevo en Javascript y lo he estado usando durante casi un mes. Estoy tratando de crear un huevo de pascua para un sitio web que se pueda encontrar escribiendo una palabra oculta en la barra de búsqueda. Mi problema principalmente tiene que ver con hacer que el valor de la variable lea las cadenas en la matriz . No aparecieron mensajes de error.
Aquí está mi código:
let searchResults = ['dog', 'cat', 'bird']; let searchInput = document.querySelector('.search-box .input-box #searchbar'); function searchBar() { searchInput.addEventListener("keyup", function(event) { if (event.keyCode == 13) { } else { } }); searchInput.addEventListener("input", function(event) { let value = event.target.value; if (value == searchResults[2] && (event.keyCode == 13)) { window.location.href = "bird.html"; } else { } }); }También hay un pequeño problema adicional con el código clave que se activa varias veces. No estoy demasiado preocupado por esto, pero sería bueno encontrar una solución para ello.
No existe una propiedad "keyCode" para un evento de entrada. El código de tecla existe solo en keyboard events , pero input es su propio tipo de evento separado.
Utilice el evento keyup en su lugar. Realmente no hay razón para tener dos controladores de eventos separados de todos modos.
let searchResults = ['dog', 'cat', 'bird']; let searchInput = document.querySelector('#searchbar'); searchInput.addEventListener("keyup", function(event) { if (event.keyCode == 13) { let value = event.target.value; if(value == searchResults[2]){ // window.location.href = "bird.html"; console.log("birb"); }else{ // User hit enter but it wasn't bird... } } }); <input id=searchbar>