@ICE777

Как переместить элементы с одинаковыми классами?

<div class="a1">1</div>
<div class="a1">2</div>
<div class="a1">3</div>
<div class="z36">4</div>


Пример у нас есть 4 блока и 3 из них имеют одинаковые классы один имеет другой класс (для разнобраности), суть такова чтобы при зажиме на каком-то из элементов "а1" он передвигался за курсором и при отпускании остался там где был отпущен (обычное перетаскивание думаю понятна его суть).

С айди элементов у меня получилось но с классами нет, намного выгодней добавить один класс к элементам чем к каждому новый айди.

Пожалуйста напишите как это сделать только на JS.
  • Вопрос задан
  • 41 просмотр
Решения вопроса 2
dollar
@dollar
На чёткий вопрос - чёткий ответ.
Можно с помощью JS добавить id элементам.

Например, как-то так:
document.querySelectorAll('div.a1').forEach(e => {
  e.id = "a1_" + (window.new_id ? ++new_id : new_id = 1);
});

Но это лишь пример. Лучшая оптимизация зависит от конкретного сайта и от нюансов конкретной задачи. Хотя, если там 5-10 элементов, можно и забить на оптимизацию, лишь бы не setInterval :)
Ответ написан
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
По нажатию кнопки, определяете над каким элементом сейчас курсор. И не важно что у него ИД, класс, артибуты ... Вы просто определяете один конкретный элемент и сохраняете его в переменную. Курсор двигается и вы за ним двигаете элемент из переменной. Можно вообще обойтись без классов
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы