Я пытаюсь создать веб-страницу, используя функцию перетаскивания. Страница предназначена для пользователя, чтобы перетащить изображение (я создал два класса, один из которых называется «паруса», а другой - «лодки») в div (класс с именем «dropbox» и «dropbox2»).
Проблема, с которой я столкнулся, заключается в том, что если пользователь помещает изображение в сбрасываемый div, который уже содержит изображение, одно из изображений исчезает и не может быть восстановлено.
Чтобы решить эту проблему, я считаю, что мне нужно создать функцию, используя оператор if / else, чтобы проверить, содержит ли div изображение. Если это так, то я хочу, чтобы функция перетаскивания оставила свои настройки по умолчанию, чтобы они не попадали в div и не исчезали от пользователя. Иначе, он выполняет код, который у меня уже есть, который отключает природу по умолчанию, чтобы он мог попасть в div.
if (**div contains an img**) {
**keep the default nature so that it doesn't drop into the div**
} else {
function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("text");
ev.target.appendChild(document.getElementById(data));
}
}
Как я могу сформулировать условие, чтобы я мог проверить, содержит ли div изображение, и как я могу произнести блок кода, чтобы НЕ позволить изображению попасть в этот div, если условие это правда?
или я атакую эту проблему неправильно? Мне кажется логичным, но я не опытный.
Вот ссылка на мой кодовый блок для этого проекта:
https://codepen.io/Pacman0006/pen/vYEWppe
Любой Помощь будет принята с благодарностью:)