Я создаю функцию настройки еды на веб-сайте, где клиент может выбирать различные ингредиенты для настройки своей еды. У меня отлично работает задняя часть, но у меня немного проблемы с передним концом.
Я использовал различные идентификаторы, классы и функции для создания наложения при наведении курсора и затем накладывал границу вокруг изображений продуктов, как только они были нажаты (выбраны), но это довольно длинный метод. Это работает, но поскольку ингредиентов намного больше, чем этот (еще 30), я немного беспокоюсь о том, что функции становятся слишком длинными.
HTML
CSS:
#food:hover, #food1:hover, #food2:hover, #food3:hover, #food4:hover, #food5:hover, #food6:hover, #food7:hover{
filter: brightness(75%); !important;
}
.selected {
border: 3px solid #186472 !important;
}
JavaScript
<script>
function select(){
document.getElementById("food").classList.add('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.remove('selected');
}
function select1(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.add('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.remove('selected');
}
function select2(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.add('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.remove('selected');
}
function select3(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.add('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.remove('selected');
}
function select4(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.add('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.remove('selected');
}
function select5(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.add('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.remove('selected');
}
function select6(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.add('selected');
document.getElementById("food7").classList.remove('selected');
}
function select7(){
document.getElementById("food").classList.remove('selected');
document.getElementById("food1").classList.remove('selected');
document.getElementById("food2").classList.remove('selected');
document.getElementById("food3").classList.remove('selected');
document.getElementById("food4").classList.remove('selected');
document.getElementById("food5").classList.remove('selected');
document.getElementById("food6").classList.remove('selected');
document.getElementById("food7").classList.add('selected');
}
</script>
Пример изображения