Здравствуйте, когда я встраиваю видео на YouTube в iframe, который создан не с помощью тега HTML, а создан с помощью JavaScript (document.createElement ()), видео не воспроизводится, и отображается только сообщение об ошибке «Видео недоступно» показано.
Дополнительная информация:
- Первый iframe не имеет атрибута sr c.
- Документ iframe создается программно. Второй (встраивание видео) iframe является частью первого документа iframe.
- Эта страница работает на локальном хосте.
- Это происходит также в онлайн-приложениях, работающих на собственном домене.
- Такое поведение наблюдается не для всех видео, я заметил, что в основном это происходит с видео * musi c.
- Для всех видео включено встраивание, поэтому это не причина, по которой эти видео невозможно воспроизвести.
GIF показывает поведение здесь
index. html:
<html>
<div>
<iframe id="myFrame" style="width: 600px ; height: 350px" src="iframeVideo.html" frameborder="1"
allowfullscreen=""></iframe>
</div>
<div id="video"></div>
<script>
var container = document.getElementById("video");
var frame = document.createElement("iframe");
frame.style.width = "600px";
frame.style.height = "400px";
frame.onload = function () {
if (frame.contentDocument) {
var fdoc = frame.contentDocument;
var vframe = fdoc.createElement("iframe");
vframe.src = "https://www.youtube.com/embed/NEIwl93Yr8o";
vframe.setAttribute("frameborder", "0");
vframe.setAttribute("allowfullscreen", "");
vframe.style.width = "500px";
vframe.style.height = "281px";
fdoc.body.appendChild(vframe);
}
}
container.appendChild(frame);
</script>
</html>
iframeVideo. html:
<html>
<iframe id="myFrame" style="width: 500px ; height: 281px" src="https://www.youtube.com/embed/NEIwl93Yr8o" frameborder="0"
allowfullscreen=""></iframe>
</html>