6 385
edições
Sem resumo de edição |
Sem resumo de edição |
||
Linha 62: | Linha 62: | ||
}); | }); | ||
document.addEventListener('keydown', function(event) { | document.addEventListener('keydown', function (event) { | ||
if (dropdown.style.display === 'none' || !dropdown.childNodes.length) { | |||
return; // Não faça nada se o dropdown estiver escondido ou vazio | |||
} | |||
if (event.key === 'ArrowDown') { | |||
const activeItem = document.querySelector('.dropdown-item.active'); | |||
if (activeItem) { | |||
activeItem.classList.remove('active'); | |||
const nextItem = activeItem.nextElementSibling || dropdown.firstChild; | |||
nextItem.classList.add('active'); | |||
nextItem.scrollIntoView({ block: "nearest" }); // Garante que o item fique visível | |||
} else { | |||
dropdown.firstChild.classList.add('active'); | |||
dropdown.firstChild.scrollIntoView({ block: "nearest" }); | |||
} | |||
event.preventDefault(); // Evita rolagem da página | |||
} else if (event.key === 'ArrowUp') { | |||
const activeItem = document.querySelector('.dropdown-item.active'); | |||
if (activeItem) { | |||
activeItem.classList.remove('active'); | |||
const previousItem = activeItem.previousElementSibling || dropdown.lastChild; | |||
previousItem.classList.add('active'); | |||
previousItem.scrollIntoView({ block: "nearest" }); | |||
} else { | |||
dropdown.lastChild.classList.add('active'); | |||
dropdown.lastChild.scrollIntoView({ block: "nearest" }); | |||
} | |||
event.preventDefault(); | |||
} else if (event.key === 'Enter') { | |||
const activeItem = document.querySelector('.dropdown-item.active'); | |||
if (activeItem) { | |||
activeItem.click(); | |||
} | |||
event.preventDefault(); | |||
} | |||
}); | |||
function showImageInfo(imageName) { | function showImageInfo(imageName) { |