كيفية إزالة الصور المحملة ديناميكيًا في JavaScript
-
20-09-2019 - |
سؤال
أقوم بتحميل 3 صور (اسمه 1.JPG ، 2.JPG ، 3JPG) ديناميكيًا إلى 3 divs يسمى "div1" ، "div2" و "div3".
function loadImages() {
for (var i = 1; i < 3; i++ ) {
var img = document.createElement("img");
img.src = "vegetables/"+i+".jpg";
img.id = "a"+i+"";
var divName = "div"+i+"";
document.getElementById(divName).appendChild(img);
}
}
هذا يعمل ، لكن الجزء المزيل لا يبدو لي أن أذهب إلى العمل ..
function removeImages() {
for (var i = 1; i < 3; i++ ) {
var oldImages = "a"+i+"";
var divName = "div"+i+"";
document.getElementById(divName).removeChild(oldImages);
}
}
شكرًا لك.
المحلول
في الإزالة ،
document.getElementById(divName).removeChild(document.getElementById(oldImages));
removeChild
يأخذ عنصر DOM ، وليس معرف.
نصائح أخرى
في إزالتك ، "Oldimages" هي مجرد سلسلة تقول "A1" أو أي شيء آخر. يجب أن تكون المعلمة إلى .removechild عنصر DOM فعلي. تحتاج إلى العثور عليه مرة أخرى (باستخدام document.getElementById أو عن طريق اجتياز أطفال عقدة Div) أو الحفاظ على الإشارات إلى عنصر الصورة.
لا تنتمي إلى StackOverflow