Я пытаюсь создать слайд-шоу, где изображения размещаются во внешнем массиве JSON, загружаются на html-страницу и вставляются на холст HTML5.
Пока я могу загрузить все изображения, но не могу добавить одно изображение из загруженных изображений Json на холст.
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset = "utf-8">
<link rel="stylesheet" type="text/css"
href="http://localhost/slideshow.css">
<meta name="viewport" content="width=device-width">
<title> JSON SlideShow </title>
</head>
<body>
<header>
<h1> JSON </h1>
<button id="btn"> GET </button>
<div id=slideshow"></div>
<p>Canvas:</p>
<canvas id="Canvas777" width="240" height="297" style="border:1px solid
#d3d3d3;">
Your browser does not support the HTML5 canvas tag.
</canvas>
<script src="http://localhost/slideshow.js"></script>
</header>
</body>
</html>
Попытка JavaScript:
var slideContainer = document.getElementById("slideshow");
var btn = document.getElementById("btn");
var getImages = new XMLHttpRequest();
getImages.open('GET', 'http://localhost/slideshow.json');
getImages.onload = function() {
var ourData = JSON.parse(getImages.responseText);
renderHTML(ourData);
};
getImages.send();
function renderHTML(data) {
var htmlString = "";
for (i = 0; i < data.length; i++) {
htmlString += "<img src=" + data[i].img + ">" + "</img>";
}
slideContainer.insertAdjacentHTML ('beforeend', htmlString);
}
window.onload = function() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = new Image();
img.onload = function() {
ctx.drawImage(htmlString,10,10);
};
};
Я знаю, что идет не так, но не знаю, как это исправить.