Учитывая следующий HTML:JQuery - получить индекс элемента, ограниченного в классе
<div class="my-container">
<div class="x">
<a href="#">Link 1</a>
</div>
<div class="x">
<a href="#">Link 2</a>
</div>
<div class="x">
<a href="#">Link 3</a>
</div>
<div class="x y">
<a href="#">Link 4</a>
</div>
<div class="x">
<a href="#">Link 5</a>
</div>
<div class="x y">
<a href="#">Link 6</a>
</div>
<div class="x">
<a href="#">Link 7</a>
</div>
</div>
Какие элементы получить y
класс - это динамичная вещь, которая изменяется во время выполнения на основе различных взаимодействий пользователей.
На мыши над якорем (я могу предположить, что якорь находится в DIV с y
класса, потому что только те видны), мне нужно, чтобы получить индекс это контейнер (который ДИВ с y
класса), но ограничивается этим классом y
.
Значение:
- Mouseover на "Link 4" должны сказать мне:
0
(первый элемент с классомy
) - при наведении курсора мыши на "Ссылка 6" должен сказать мне:
1
(второй элемент с классомy
)
.index()
не помогает мне здесь
EDIT: @Kevin B Я читал документы, но не смог заставить его работать. Самое близкое, что я мог найти, это передать коллекцию .index()
, которую я пробовал. Но не работал (также, их пример для коллекции с vanilla js document.getElementById - это не сработало для меня, нужно работать с классами, попытался адаптировать: myCollection = $ (this) .closest ('. my-container '). children ('. y ') и передал это .index()
, и это не сработало). Я бы не публиковал без google-ing, а также просматривал документы, не знаю, почему голосующий голос (не указывая пальцами, я не предполагаю, что знаю, кто это). Просто потому, что я сказал: «.index()« не помогает мне »? Ну, я пробовал все, что понял, я мог с этим поделать, и не мог этого сделать. Вот почему я опубликовал.
* ". Index() не помогает мне здесь" * Вы уверены? [Вы прочитали документацию по указанному методу?] (http://api.jquery.com/index/), похоже, что это сработает. –
'index()' именно то, что вам нужно: '$ (this) .index ('. Y a')' где 'this' является элементом' a', который вызвал событие mouseenter –
Звучит как [проблема XY] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem): * «Мне нужно получить индекс» * .. вы? Вам, вероятно, не нужен * index *, если это не производный, нереалистический сценарий/технические упражнения. Дайте каждому контейнеру «data-idx =» с фактическим значением, которое ему нужно, и используйте '$ (this) .closest (« div.y »). Data (« idx »)' –