Во-первых, нет классов для отдельных предметов. Вы можете индивидуально стилизовать их, используя идентификаторы, и иметь только одну функцию наведения для всех объектов одного класса (в отличие от копирования и вставки четыре раза).
Во-вторых, вот основная структура, которую вы должны иметь:
<div class="button" id="btn1">
<div class="info"><img src="info1"></img></div>
</div>
<div class="button" id="btn2">
<div class="info"><img src="info2"></img></div>
</div>
...
Вам не нужно иметь элементы .info в качестве дочерних элементов кнопок, но они должны быть доступны без уникального идентификатора (т. Е. Следующего элемента или дочернего элемента).
Это делает javascript простым:
$(".button").hover(function() {
$(this).find(".info").slideDown();
}, function() {
$(this).find(".info").slideUp();
});
Или вы можете изменить его так, чтобы он работал лучше:
$(".button").hover(function() {
$(".info").not(".info", $(this)).slideUp(); // Not sure if valid JQ
$(this).find(".info").slideDown();
});