D
D
Dima2020-05-08 19:18:20
JavaScript
Dima, 2020-05-08 19:18:20

How to find out which element of the array is hovered over?

5eb58577299b2086577380.png
5eb5857eafe28785243333.jpeg

const topItems = document.querySelectorAll('.top_nav-container li');
  const botItems = document.querySelectorAll('.bott_nav-container div');

  console.log(topItems);
  console.log(botItems);

How to make the .active class added to the first element of the second list when hovering over the first element of the first list?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
A
Anar Latifov, 2020-05-08
@dieie

Well, here's a simple solution, but it only works if the lists match.

const topItems = document.querySelectorAll('.top_nav-container li');
const botItems = document.querySelectorAll('.bott_nav-container div');

//Используем цикл forEach чтоб пройти по всем элемента массива(списка)
topItems.forEach((item, i) =>{
    item.addEventListener("mouseover", function() {
        // при наведении на любой элемент списка topItems тому же эл.
        // из botItems мы добавляем класс, однако как и говорилось для этого
        // списки должны быть идентичными
        botItems[i].classList.add("active") 
    });

    item.addEventListener("mouseleave", function() {
        // Тут делаем так чтоб при уходе с элемента класс также удалялся у соотв. эл. botItems
        botItems[i].classList.remove("active") 
    })
    
})

K
Karpion, 2020-05-10
@Karpion

On the desired objects, you can hang a handler that is triggered when the cursor is hovered/left.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question