У меня есть структура, как показано ниже, и я хочу toggle active
текущий .item
элемент. Я использую простую функцию Vanilla JavaScript, которую я обычно использую в ситуациях, похожих на щелчки, и она работает.
function myFunction(e) {
var elems = document.querySelectorAll(".hover");
[].forEach.call(elems, function(el) {
el.classList.remove("hover");
});
e.target.classList.add("hover");
}
<div class="main-container">
<div class="item hover" onmouseover="myFunction(event)">
<a href="#">item 1</a>
</div>
<div class="item" onmouseover="myFunction(event)">
<a href="#">item 2</a>
</div>
<div class="item" onmouseover="myFunction(event)">
<a href="#">item 3</a>
</div>
</div>
Пока все хорошо, но тут возникает сложная часть. Когда мышь переходит к элементу-брату, зависание корректно меняется на внутренний.
Я попробовал несколько тиков CSS, но мне не удалось заставить его работать, любые мысли будут высоко оценены
PS Я предпочитаю Ваниль JavaScript, чем jQuery