Цикл html2canvas

У меня возникли некоторые проблемы при попытке реализовать скрипт html2canvas в цикле for.

Я пишу функцию Javascript, которая использует массив данных для изменения стиля группы элементов, захватывает контейнер div как холст, преобразует его в изображение, добавляет его в тело документа и затем переходит к следующему индекс массива.

Часть, где у меня возникают проблемы, находится в самом конце моего цикла:

html2canvas(document.getElementById("background"), {
    onrendered: function(canvas) {
        var imgdata = canvas.toDataURL("image/png");
        var obj = document.createElement("img");
        obj.src=imgdata;
        document.body.appendChild(obj);
    }
});

Проходя сценарий шаг за шагом, я обнаружил, что он не ожидает рендеринга холста, прежде чем перейти к следующей итерации цикла for, это приводит к тому, что элемент, который я пытаюсь зафиксировать, меняется, но каждый изображение отображается точно так же (как конечный индекс в массиве).

Есть ли способ отложить сценарий на секунду, пока визуализируется холст? Я пытался использоватьsetTimeout() и не могу найти какие-либо другие способы задержки сценария, я не знаю, какonrendered часть кода работает.

Если мое объяснение неясно, я скоро подготовлю несколько подходящих примеров.

Ответы на вопрос(2)

Ваш ответ на вопрос