J'essaie de générer dynamiquement un élément vidéo sur une page en utilisant JavaScript.Est-ce que l'injection de balises vidéo (HTML 5) via JavaScript fonctionne dans tous les navigateurs?
JavaScript
<script type="text/javascript">
$(document).ready(function() {
var video = $(document.createElement('video'))
.attr('id', 'VideoElement')
.attr('controls', 'controls')
.attr('src', 'videopath.mp4') // Changed 'href' attribute to 'src'
.css({
width: 640,
height: 360
});
$('#VideoContainer').append(video);
});
HTML
<body>
<div id="VideoContainer"></div>
</body>
Dans Firefox je reçois le faisceau vidéo, mais la vidéo réelle ne se charge pas. Dans IE8, le faisceau vidéo n'apparaît même pas.
Est-ce que HTML 5 n'est tout simplement pas assez supporté pour accomplir cela?
Édition: Vous l'avez trouvé avec le correctif d'Artiom. Cela semble fonctionner correctement avec Chrome et Safari. J'utilise un codec que Firefox ne supporte pas, donc ça ne marche pas; bien que je soupçonne que cela fonctionnera avec un codec pris en charge. IE8 assez sûr ne fonctionne pas (haute cinq IE).
Vous peut combiner cet appel 'attr' en un seul appel en passant un objet comme vous le faites avec' css'. – x1a4