每次结束时,视频循环都会多次繁殖

时间:2019-05-15 17:38:16

标签: javascript html aframe

此问题正在使用Aframe。 我手动将videosphere放在循环上,并在(“ end”)上使用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结束后,日志按预期显示1次“ AEntranceScene1结束”。此(附加了photo0)播放了1次this (Attached the photo0) played 1 time

但是当视频再次播放时。它显示日志“正在播放 AEntranceScene1”多次,不仅添加了一次。结束时,日志还显示了几次“ AEntranceScene1 end”(附加照片1)播放了2次 this (Attached the photo1) played 2 time

随着循环的完成,这会变得更糟。(附上照片2)只播放了3次 [This (Attached the photo2) played 3 times only

enter image description here

您能告诉我这里发生了什么吗?以及对我的代码的任何修复? 谢谢

1 个答案:

答案 0 :(得分:0)

我自己找到了答案。

这是由于将autoplay放在<a-assets>中引起的, 一旦我删除了autoplay,它就可以正常工作