|
|
|
| Вот структура документа.
<div id="kn">
<div class="line">
<div class="yach">0</div>
<div class="yach">1</div>
<div class="yach">2</div>
</div>
<div class="line">
<div class="yach">3</div>
<div class="yach">4</div>
<div class="yach">5</div>
</div>
<div class="line">
<div class="yach">6</div>
<div class="yach">7</div>
<div class="yach">8</div>
</div>
</div>
|
Выбираю все элементы с классом yach.
yach = $('#kn .yach');
Далее мне нужно при клике на один из элементов, узнать позицию этого элемента в объекте yach.
То бишь, все выборка предусматривает в себе 9 элементов. Я с начала думал можно выполнить index()
yach.click(function(){
alert($(this).index());
})
|
Но потом прочитал, что он возвращает позицию элемента в DOM? по отношению в родительскому элементу.
Потом пытался indexOf() но тоже не прокатывает..
Потом пришла идея сделать так
yach.click(function(){
alert($.inArray(this, yach)) // Вернул позицию
})
|
Но вроде как бы это все равно не правильно. Хоть и работает..
Не подскажите как? | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(05.07.2012 в 21:16)
| | $('#kn .yach').index(this); | |
|
|
|
|
|
|
|
для: AlexSol
(05.07.2012 в 21:52)
| | Не.. не сработает. | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(06.07.2012 в 00:01)
| | $('#kn .yach').index($(this)); | |
|
|
|
|
|
|
|
для: Гавриленко Дмитрий
(05.07.2012 в 21:16)
| | Почему не правильно, все верно, вы получили массив объектов, а порядок, это порядок в этом массиве. Всегда ли такой порядок будет соответствовать позиции элемента на странице, это уже иной вопрос. | |
|
|
|
|
|
|
|
для: confirm
(05.07.2012 в 21:58)
| | Да? Ну тогда хорошо.. А порядок меняться не будет | |
|
|
|