Ingernirated
@Ingernirated
Романыч

Image в JS, как добавить однократно?

Подскажите, пожалуйста, пытаюсь подгружать картинку через Js, но appendChild её добавляет каждый раз.
Как сделать так, чтобы он мог добавить её всего 1 раз, даже если функцию вызова повторять?
var img = new Image();
img.src = "i/car.png";
document.querySelector(".div").appendChild(img);


А вообще ситуация такая, каждый раз вызывая эту функцию, текст, как и полагается, подгружается вместо другого, а картинка навсегда остается в "div", даже для других запросов ajax, как мне её добавить только 1 раз и при этом не привязывать так глобально ко всем, чтобы вызывая снова другой запрос, она исчезала тоже и появлялась только при своём запросе?

var xhttp;
	if (window.XMLHttpRequest) {
		xhttp = new XMLHttpRequest();
	} else {
		xhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xhttp.onreadystatechange = function() {
		if (this.readyState == 4 && this.status == 200) {
			document.querySelector(".p").innerHTML = this.responseText;
			var img = new Image();
			img.src = "i/car.png";
			document.querySelector(".div").appendChild(img);
		}
	}
	xhttp.open("GET", "rainText.txt", true);
	xhttp.send();
  • Вопрос задан
  • 165 просмотров
Решения вопроса 1
Установи флаг - переменную какую-нибудь создай с булевым значением и уже от нее отталкивайся
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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