Hallo,
ich habe in meiner Webpage derzeit ein Video integriert und per Button soll dieses Video durch ein anderes ausgetauscht werden. Funktioniert auch einwandfrei - außer im IE8.
Hier kommt ersteinmal der Code. Ihr seht dort das Video und darunter 2 divs, die nicht angezeigt werden, dem jQuery Skript aber helfen zu ermitteln welche Video gerade "aktuell" ist und durch welches ersetzt werden soll.
HTML:
JS:
Um überhaupt ein Video im IE8 abspielen zu können benutze ich diesen bypass mit dem swfobject. Das funktioniert auch 1a. Allerdings ist es so, sobald ich oben auf den Knopf zum "switchen" drücken, spielt er im IE8 das neue Video nicht. Ich vermute das es am $(document).ready(function() { liegt, habe den untigen Code ohne $(document) aber auch oben nach oben hinter $("video").trigger("play"); kopiert, was keine Änderung bringt.
IE8 video bypass:
Habt ihr eine Idee, wie das "neue" Video auch im IE8 abgespielt wird?
Danke!
ich habe in meiner Webpage derzeit ein Video integriert und per Button soll dieses Video durch ein anderes ausgetauscht werden. Funktioniert auch einwandfrei - außer im IE8.
Hier kommt ersteinmal der Code. Ihr seht dort das Video und darunter 2 divs, die nicht angezeigt werden, dem jQuery Skript aber helfen zu ermitteln welche Video gerade "aktuell" ist und durch welches ersetzt werden soll.
HTML:
HTML:
<video id="video" controls="controls" loop="loop">
<source src="inc/1.mp4" type="video/mp4">
<source src="inc/1.webm" type="video/webm">
</video>
<div class="video-active" movie="one">Active Video</div>
<div class="video-active-name" movie="1.mp4">Active Video Name</div>
<img class="section-video-button" src="img/btn.png" alt="btn" />
JS:
Code:
$(function() {
$(".section-video-button").on("click", function() {
$("video").trigger("pause");
if ($('.video-active').attr('movie') == 'one') {
$('#video').replaceWith('<video id="video" controls="controls" loop="loop"><source src="inc/2.mp4" type="video/mp4"><source src="inc/2.webm" type="video/webm"></video>');
$('.video-active').attr('movie','two');
$('.video-active-name').attr('movie','2.mp4');
} else {
$('#video').replaceWith('<video id="video" controls="controls" loop="loop"><source src="inc/1.mp4" type="video/mp4"><source src="inc/1.webm" type="video/webm"></video>');
$('.video-active').attr('movie','one');
$('.video-active-name').attr('movie','1.mp4');
}
$("video").trigger("play");
});
});
Um überhaupt ein Video im IE8 abspielen zu können benutze ich diesen bypass mit dem swfobject. Das funktioniert auch 1a. Allerdings ist es so, sobald ich oben auf den Knopf zum "switchen" drücken, spielt er im IE8 das neue Video nicht. Ich vermute das es am $(document).ready(function() { liegt, habe den untigen Code ohne $(document) aber auch oben nach oben hinter $("video").trigger("play"); kopiert, was keine Änderung bringt.
IE8 video bypass:
Code:
$(document).ready(function() {
var v = document.createElement("video");
if ( !v.play ) {
var h264 = $('.video-active-name').attr('movie');
var folder ="inc/";
var flashvars = {autoplay:true,loop:true,controls:true,src:escape(folder+h264)};
var params = {allowFullScreen:false,wmode:"opaque"};
var attributes = {bgcolor:"#000000"};
swfobject.embedSWF("flashfox.swf", "video", "640", "360", "9.0.0","", flashvars, params, attributes);
}
});
Habt ihr eine Idee, wie das "neue" Video auch im IE8 abgespielt wird?
Danke!