Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Фильтрация dom элементов (https://javascript.ru/forum/dom-window/74541-filtraciya-dom-ehlementov.html)

s24344 19.07.2018 14:10

Фильтрация dom элементов
 
Ребята, подскажите, пожалуйста, как мне решить следующую задачу:
У меня есть массив dom элементов:
[a.nav__item-link, a.nav__item-link, a.nav__item-link, a.nav__item-link, a.nav__item-link, a.nav__item-link, a.nav__item-link, a.nav__item-link]

У каждого из них есть data атрибут:
data-nav-id=""
<a class="nav__item-link" href="players.html" tabindex="0" data-nav-ref="primary-link" data-nav-id="_1"><span>Players</span></a>
<a class="nav__item-link" href="players.html" tabindex="0" data-nav-ref="primary-link" data-nav-id="_2"><span>Players</span></a>

И так далее

При определенном событии, в моем случае:
mouseenter
Я получаю один из этих элементов, например:
<a class="nav__item-link" href="players.html" tabindex="0" data-nav-ref="primary-link" data-nav-id="_6"><span>Players</span></a>

Как мне отфильтровать, и получить в новой переменной все эти элементы без того элемента, который я получил при каком-либо событии?

рони 19.07.2018 14:19

s24344,
arr.filter(a => a != el)

j0hnik 19.07.2018 14:25

<div class="el">1</div>
	<div class="el">3</div>
	<div class="el">4</div>
	<div class="el">5</div>
	<div class="el">6</div>
	<script>

		var div = document.querySelectorAll('div');
		var x;
		div.forEach(el => el.onmouseenter = e =>{
			x = el;
			console.log([].filter.call(div, el=> el != x));
		} );


	</script>

s24344 19.07.2018 14:58

Большое спасибо.


Часовой пояс GMT +3, время: 23:57.