브라우저에서 한 번에로드하려고하는 비디오가 2-3 개 이상인 경우 그 중 일부는 정지하게됩니다. HTML5 동영상은 동영상로드를 시작하는 방법을 제공하지만 멈추라는 방법은 없습니다. 메모리에있는 한 처음 재생을 시작하면 다시 재생하기로 결정한 경우 계속해서 더 많은 데이터를로드하려고 시도합니다. 한 번에 너무 많은 동영상 만로드하므로 처음 세 개의 동영상을로드하는 경우 네 번째 동영상은 아주 오래 동안 기다릴 것입니다.
오래된 동영상을 삭제하고 나중에 다시로드하는 것이 올바른 방법이지만 브라우저에서 동영상을로드하는 것을 멈추게하려면 매우 철저히 조사해야합니다. 여기 당신이해야 할 일이 있습니다.
// 1) Pause the video
oldVideo.pause();
// 2) Clear the video source URL
oldVideo.src = "";
// 3) Tell the video to start loading "nothing"
oldVideo.load();
마지막 단계는 매우 중요합니다. src
을 빈 문자열로 설정해도 동영상은 load
에 전화 할 때까지 무시됩니다. 원하는 경우 DOM 및 모든 데이터 구조에서 제거하여 완전히 가비지 수집 할 수 있습니다. 그러나 그렇게해도 src
을 삭제하고 load
으로 전화하지 않으면 가비지 수집되지 않습니다.
다음 번에 비디오를로드 할 때 새 요소를 만들거나 src
을 동일하게 설정하면 잘 작동합니다.
당신은 천재입니다! 고마워요! – jroy
다행입니다! – brianchirls