mirror of
https://github.com/RetroDECK/RetroDECK-Website.git
synced 2024-11-22 06:55:37 +00:00
38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
const featureContainerElems = document.getElementsByClassName('feature-container');
|
|
let currentFeature = 1
|
|
|
|
for (let i = 0; i < featureContainerElems.length; i++) {
|
|
featureContainerElems[i].addEventListener('click', function() {
|
|
if (i != currentFeature) {
|
|
updateActiveFeature(i);
|
|
}
|
|
})
|
|
}
|
|
|
|
document.addEventListener('keyup', keyControl);
|
|
|
|
function keyControl(e) {
|
|
if (e.code == 'ArrowRight') {
|
|
if (currentFeature < featureContainerElems.length-2) {
|
|
updateActiveFeature(currentFeature + 1);
|
|
} else {
|
|
updateActiveFeature(1);
|
|
}
|
|
}
|
|
if (e.code == 'ArrowLeft') {
|
|
if (currentFeature > 1) {
|
|
updateActiveFeature(currentFeature - 1);
|
|
} else {
|
|
updateActiveFeature(featureContainerElems.length-2);
|
|
}
|
|
}
|
|
}
|
|
|
|
function updateActiveFeature(i) {
|
|
const lastCurrentFeature = currentFeature;
|
|
currentFeature = i;
|
|
|
|
featureContainerElems[i].id = 'active-feature';
|
|
featureContainerElems[i].scrollIntoView({block: 'start', inline: 'center'});
|
|
featureContainerElems[lastCurrentFeature].id = ''
|
|
} |