SetAttribute и video.src для изменения источника видеотеки, не работающего в IE9

Я буквально прочитал каждый поток stackoverflow относительно изменения источника видеотеки динамически с помощью javascript в IE9, включая полезные, но не согласованные сообщения здесь и здесь, но чувствую, что есть другое решение. Вот основной пример того, что я пытаюсь сделать:

    var video = document.getElementById('video');
    //now, use either of the lines of code below to change source dynamically

    video.src = "nameOfVideo";
    //or use...
    video.setAttribute("src", "nameOfVideo");

Обе эти строки кода ненавидят Internet Explorer, особенно потому, что src наиболее определенно изменяется после проверки с помощью простого атрибута video.getAttribute, хотя IE фактически ничего не делает для переключения видео.

Да, есть утверждения, что с IE вы должны иметь src, указанный в HTML, чтобы изменить их после загрузки страницы, НО я определенно нашел поток в stackoverflow, который предложил решение с помощью простого JavaScript. (К моему разочарованию, я больше не могу найти поток, который сделал это... и я искал везде, поверьте мне).

При всем том, если кто-то может предоставить решение БЕЗ использования размещения всего видео src в HTML и вместо этого, динамически настраивая/создавая src с использованием JavaScript, как показано выше, я был бы чрезвычайно благодарен.

(Или, если вы могли бы указать мне в направлении "недостающего" потока переполнения, который проверяет, существует ли атрибут в IE, а затем каким-то образом установите src через javascript, это также будет оценено).

Ответ 1

Отличные новости, я нашел истинное решение для переключения/изменения видео в тегах HTML5 через JavaScript без использования раздражающего взлома, который я пытался объяснить! Это невероятно просто, и он просто взял много экспериментов с IE. Ниже приведен код в его простейшей форме для работы в IE:

<html>
  <body>
    <video id='videoPlayer' width="320" height="240" controls="controls">
       <source id='mp4Source' src="movie.mp4" type="video/mp4" />
       <source id='oggSource' src="movie.ogg" type="video/ogg" />
    </video>

<!-- You MUST give your sources tags individual ID for the solution to work. -->

    <script>
      var player = document.getElementById('videoPlayer');

      var mp4Vid = document.getElementById('mp4Source');

      player.pause();

      // Now simply set the 'src' property of the mp4Vid variable!!!!

      mp4Vid.src = "/pathTo/newVideo.mp4";

      player.load();
      player.play();
    </script>
  </body>
</html>

И у вас это есть. Невероятно прост и проверен и работает в IE8 и IE9... Если у вас возникли проблемы, сообщите мне.