Цикл видео умножается более одного раза каждый раз, когда он заканчивается - PullRequest
0 голосов
/ 15 мая 2019

Этот вопрос использует Aframe. У меня есть видеосфера в цикле вручную с включенным addEventListener («конец»). Код работает нормально, пока я не посмотрю на консоль. Это дает мне странные журналы.

myvideo = document.querySelector("#videoSphere");

var aEntranceScene1 = document.querySelectorAll("#playButton1");
for (var i = 0; i < aEntranceScene1.length; i++) {
aEntranceScene1[i].addEventListener("click", function () {
    Scene1();
});
};

function Scene1(){
myvideo.setAttribute("src", "video/AEntranceScene1.mp4");
    myvideo.currentTime = 0;
    myvideo.play();
    console.log("playing AEntranceScene1");
    Hotspots();

myvideo.addEventListener("ended", function () {
    console.log("AEntranceScene1 ended");
Scene1();
    });
};

function Hotspots() {
sceneIndex = 1;
document.querySelector("#DButton").emit("disappear");

setTimeout(function () {
    if (sceneIndex == 1 && !myvideo.paused) {
        document.querySelector("#DButton").emit("move-start");
    }
}, 3000);
};

Когда видео воспроизводится в первый раз. Отображает журнал "Игра AEntranceScene1 и когда он закончился, журнал отображает «AEntranceScene1 закончилась» 1 раз, как и ожидалось. Это (Прикрепленное фото0) проиграно 1 раз this (Attached the photo0) played 1 time

Но потом, когда видео воспроизведется снова. Отображает журнал "Игра AEntranceScene1 "несколько раз, не только добавить один. Когда это закончилось, журнал также отображает несколько раз" AEntranceScene1 закончилась "это (Прикрепленное фото1), воспроизведенное 2 раза this (Attached the photo1) played 2 time

Это будет хуже, если завершится еще один цикл. [This (Attached the photo2) played 3 times only

enter image description here

Можете ли вы объяснить мне, что здесь происходит? а какое-нибудь исправление к моему коду? Спасибо

1 Ответ

0 голосов
/ 16 мая 2019

Я нашел ответ сам.

Это вызвано положением autoplay в <a-assets>, как только я удалил autoplay, он отлично работает

...