#javascript #html #video
#javascript #HTML #Видео
Вопрос:
У меня проблема с воспроизведением видео html5 в IE9.
Вот как я включаю видео в HTML
<video id="video-1"></video>
Я обозначил элемент video в переменной в JS, чтобы легко использовать его в других функциях.
video1 = document.getElementById("video-1");
Вот как я назначаю видео в JS.
video1.innerHTML = '<source id="video-1-mp4-src" type="video/mp4" src="' 'pill.mp4' '">' '<source id="video-1-ogg-src" type="video/ogg" src="' 'pill.ogg' '">' '<source id="video-1-webm-src" type="video/webm" src="' 'pill.webm' '">';
Также попробовал этот метод назначения видео в JS….
video1.innerText = '<source id="video-1-mp4-src" type="video/mp4" src="' 'pill.mp4' '">' '<source id="video-1-ogg-src" type="video/ogg" src="' 'pill.ogg' '">' '<source id="video-1-webm-src" type="video/webm" src="' 'pill.webm' '">';
Проблема в том, что видео не загружается в IE9 …. может быть, я что-то упустил? или тег Video еще не поддерживается для IE9?
ТИА! 🙂
Ответ №1:
Я нашел решение после долгих исследований.
Страница DOCTYPE
должна быть:
<!DOCTYPE html>
(тип документа HTML5) для того, чтобы IE9 воспроизводил видео HTML5. Firefox, Chrome и т. Д. распознают тег video даже с типом документа XHTML, но IE этого не сделает.
Ответ №2:
Я думаю, что это, вероятно, связано с проблемой, когда вам нужно объявить тип MIME видео в файле .htaccess
Комментарии:
1. значит, видео HTML5 не будет воспроизводиться без этой дополнительной настройки? Еще раз спасибо. 🙂
Ответ №3:
Подтвердите режим вашего браузера и режим документа. Нажмите F12 и убедитесь, что для вкладок Режим браузера и режим документа установлены параметры IE9.
Ответ №4:
Мне кажется, что IE9 не может обрабатывать innerHTML для <source> внутри <video> .
Однако это работает, если вы делаете это классическим способом:
var video1 = document.getElementById("video-1");
var source = document.createElement('source'); // create source node
source.src = 'pill.mp4';
source.type = "video/mp4";
video1.appendChild(source); // append source node to video node
Для IE10 и выше вы можете использовать «innerHTML».