Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Переопределение индекса (https://javascript.ru/forum/misc/79350-pereopredelenie-indeksa.html)

Biotoxsin 28.01.2020 18:12

рони,
<div style="height:100%" class="exemple">
<span></span>
<span></span>
<span></span>
<span></span>
</div>

$('.exemple span:nth-child(1)').addClass('action');

$('.exemple').click(function() {
        $('.exemple span:nth-child(1)').remove('.action');
	$('.exemple span:nth-child(3)').addClass('action');
})
//до этого момента код изменить нельзя, сделал что-то похожее имитирующее мою проблему.

var index = $('.active').index();

$('.exemple').css({ top: index + "0px" });


Вот, только не знаю как тут реализовать тут запуск JS кода в HTML.

Malleys 28.01.2020 19:00

Biotoxsin, ваш код ничего на странице не показывает! Не понятно, что вы хотите достичь! (Может вы забыли показать нам CSS!)

laimas 28.01.2020 19:30

Цитата:

Сообщение от Biotoxsin
$('.active').index()

Индекс может быть только у элемента коллекции. Ну и к top добавить индекс, это нечто. Если сместить позицию нужно до элемента этого класса, тогда высота элемента умноженная на индекс.

Biotoxsin 28.01.2020 20:47

Господа Malleys, laimas, это пример. На примере я хочу получить индекс и присвоить его переменной, но после нажатия на окно, смены класса на другой элемент, индекс остаётся всё тот же.

Если же вставить этот код в обработчик события click (новый) то index будет обновляться после каждого нажатия. У меня же есть вопрос как этот код нужно представить чтоб переменная index обновлялась сама без использования её в событии click?

"Ну и к top добавить индекс, это нечто." а что не так? Как бы вы добавили значение равное индексу?

laimas 28.01.2020 20:53

Кошмар какой-то. Индекс в JQ, это collection.index(element), а без относительно коллекции никакого индекса вернуться не может. Сам по себе индекс также не изменяется, он и не может измениться у элемента никак до тех пор, пока у элемента не изменится порядок в коллекции.

А индекс, это от 0 до восьмерки на боку, каким образом можно изменить top увеличивая его на индекс?

Biotoxsin 28.01.2020 21:48

laimas,
В документации не говориться о том что это collection.index(element) . Так же приводятся примеры без использования коллекции.

К тому же как я написал способ работает если его обновлять каждый раз при помощи события например click.

А вопрос как раз в том можно ли как то обновлять его в фоновом режиме так сказать.

laimas 28.01.2020 22:06

Цитата:

Сообщение от Biotoxsin
В документации не говориться о том что это collection.index(element)

Вам известно, что в шеренге есть Вася, но вы не знаете сколько всего в шеренге. Можете ли вы при этом сказать какой по порядку в шеренге Вася?

Читайте - http://jquery.page2page.ru/index.php..._наборе

Biotoxsin 28.01.2020 22:29

laimas,
В документации есть такой пример:
alert('Index: ' + $('#bar').index());

Думаю вы его видели. Чем же он отличается от моего варианта ведь у меня active ищется среди соседних элементов которыми являются span?

рони 28.01.2020 22:33

Biotoxsin,
какую задачу вы хотите выполнить?

laimas 28.01.2020 22:42

Biotoxsin, тогда извиняюсь, думал что вы ищите индекс не известно чего. Но не понятно что вы пытаетесь сделать. К примеру коллекция позиционирована абсолютно и сдвигается на количество элементов по индексу выбранного в группе. Берем высоту элемента и умножаем на индекс. А вы чего хотите добиться добавляя индекс к top?


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