Есть такая задача: Имеется пять html блоков, 4 по углам и один в центре, при нажатии на любой из угловых блоков центральный должен занимать позицию нажатого блока а нажатый в свою очередь перемещаться на место центрального.
Не совсем понимаю как реализовать это на javascript'e.
Просто меняйте позиции элементов между собой
let divs = document.getElementsByTagName("div");
for(var i = 0; i<divs.length; i++) {
divs[i].onclick = function() {
if (this.id == 'center') return;
let center = document.getElementById('center');
let cLeft = center.style.left;
let cTop = center.style.top;
center.style.left = this.style.left;
center.style.top = this.style.top;
this.style.left = cLeft;
this.style.top = cTop;
center.removeAttribute('id');
this.setAttribute('id','center');
};
}
div {
position: fixed;
width: 50px;
height: 50px;
}
<div style="top:0px;left:0px; background-color: red;"></div>
<div style="top:0px;left:100px; background-color: green;"></div>
<div style="top:50px;left:50px; background-color: blue;" id="center"></div>
<div style="top:100px;left:0px; background-color: yellow;"></div>
<div style="top:100px;left:100px; background-color: maroon;"></div>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть массив объектов, которые нужно вывести в excel файлВсё делается правильно, но данные все слипаются, все узко и ничего не понятно
У меня есть страничка, на которой есть меню, которое отвечает за содержание контента в окне, она реализована через:
Делаю рассылку оповещения для таблицы, при запуске отправления отсылает очень много одинаковых сообщений на E-mailВозможно кто-то знает в чем...