Как соединить два динамически созданных элемента из разных функций js
У меня есть код который добавляет в блок с id cart добавляет два блока: carty и cnopki. Они прекрасно создаются. Но есть вторая функция в которой к carty добавляются динамически созданные блоки но ничего не работает, и я не знаю почему. Может он не видит carty. Вот код:
let cart = document.getElementById('cart');
var b=0;
platya =[
['1','Платье № 1'],
['2','Платье № 2'],
['3','Платье № 3'],
['4','Платье № 4'],
['5','Платье № 5'],
['6','Платье № 6']];
function delite(){
cart.innerHTML = '';
}
function platya(){
for (let i = 0; i < platya.lenght; ++i) {
let dav = document.createElement("div");
dav.className = "cartocki";
let image = document.createElement("img");
image.src = ('Img'+'/'+'p'+'/'+platya[i][0]+'.jpg');
let p = document.createElement("p");
p.innerHTML = platya[i][1];
let dyv = document.createElement("div");
dyv.className = "text";
dyv.appendChild(p);
dav.appendChild(image);
dav.appendChild(dyv);
carty.appendChild(dav);
cart.appendChild(carty);
}
}
function create(){
let div = document.createElement("div");
div.className = "cnopki";
var carty = document.createElement("div");
carty.className = "carty";
carty.id = "carty"
for (let i = 1; i < 4; ++i) {
let cnopka = document.createElement("button");
cnopka.className = "cnopka";
let image = document.createElement("img");
image.src = ('Img'+'/'+1+'.svg');
cnopka.appendChild(image);
div.appendChild(cnopka);
cart.appendChild(div);
cart.appendChild(carty);
}
}
knopca.onclick = function() {
if (b == 0){
knopca.style.animation = 'slidein 0.8s';
cart.style.animation = 'slied 1.2s forwards 0.4s ';
setTimeout(create,1300)
setTimeout(platya,1300)
setTimeout(function() {knopca.innerHTML = 'Закрыть галерею музея '}, 390);
++b;
} else {
knopca.style.animation = 'slidein2 0.2s';
cart.style.animation = 'slied2 1.2s forwards';
setTimeout(function() {knopca.innerHTML = 'Открыть галерею музея '}, 1);
--b;
setTimeout(delite,1);
}
}