YouTube -API -Ereignisse, die nicht mit Adobe Muse schießenJquery

JQuery-Programmierung
Anonymous
 YouTube -API -Ereignisse, die nicht mit Adobe Muse schießen

Post by Anonymous »

Mein Kunde möchte eine Seite mit 4 eingebetteten YouTube -Videos, die beim Klicken auf die nächste pausieren, sodass jeweils nur ein Spiel wird. Klingt einfach genug, oder? < /P>
Das Problem ist, dass er die gesamte Website in Adobe Muse behalten möchte. Ich habe ein Widget gefunden, mit dem ich JQuery/JS -Code problemlos einfügen kann. Ich verwende eine leicht modifizierte Version dieser Geige, die ich in einem Thread aus dem Jahr 2014 gefunden habe, der sehr vielversprechend und stabil aussah, aber irgendwie funktioniert es nicht, wenn ich die Seite auf meinem Webserver hochladen kann. Es funktioniert jedoch in der Geige. < /P>

Code: Select all

var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
console.log('api_inserted');

function onYouTubeIframeAPIReady() {
console.log('api_ready');
var $ = jQuery;
var players = [];
$('iframe').filter(function() {
return this.src.indexOf('http://www.youtube.com/') === 0;
}).each(function(k, v) {
console.log('iframes');
var src1 = $(this).attr('src');
$(this).attr('src', src1 + "?enablejsapi=1");
if (!this.id) { this.id='embeddedvideoiframe' + k; }
players.push(new YT.Player(this.id, {
events: {
'onStateChange': function(event) {
console.log('State_changed: ' + event.data);
if (event.data == YT.PlayerState.PLAYING) {
$.each(players, function(k, v) {
if (this.getIframe().id != event.target.getIframe().id) {
this.pauseVideo();
}
});
}
}
}
}));
console.log(players);
});
}
< /code>
Meine Konsolenausgabe sieht so aus: < /p>
api_inserted
api_ready
iframes
[X]
iframes
[X, X]
iframes
[X, X, X]
iframes
[X, X, X, X]

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post