Ich arbeite an einer Website mit einer Menge eingebetteter YouTube-Videos. Der Client möchte ein Popup anzeigen, wenn ein Video nicht mehr abgespielt wird.
Ich habe mir die YouTube-API angesehen und es scheint eine Möglichkeit zu geben, zu erkennen, wann ein Video endet:
http://code.google.com/apis/youtube/js_api_reference.html
Ich kann die Videos jedoch nicht wie auf dieser Seite erwähnt einbetten, da sich alle Videos bereits auf der Website befinden (Tausende, die manuell durch Einfügen von Einbettungscode hinzugefügt wurden).
Gibt es eine Möglichkeit, das Ende dieser Videos zu erkennen, ohne eines der vorhandenen Videos zu ändern (mithilfe von Javascript)?
javascript
flash
api
actionscript
youtube
TK123
quelle
quelle
enablejsapi=1
. Wenn sie sich in einer Datenbank befinden, sollte es ziemlich einfach sein, dassrc
Attribut zu ändern . Möglicherweise benötigen Sie einen regulären Ausdruck, wenn diese statisch in HTML-Dateien eingefügt werden.Antworten:
Dies kann über die YouTube-Player-API erfolgen:
http://jsfiddle.net/7Gznb/
Arbeitsbeispiel:
quelle
Möglicherweise möchten Sie auf allen Seiten ein Skript einfügen, das Folgendes ausführt: 1. Suchen Sie den YouTube-Iframe: Suchen Sie nach Breite und Höhe nach Titel oder suchen Sie in der Quelle nach www.youtube.com. Sie können dies tun, indem Sie ... - die window.frames durch eine For-In-Schleife durchlaufen und dann nach den Eigenschaften herausfiltern
Fügen Sie jscript in den Iframe der aktuellen Seite ein und fügen Sie die onYoutubePlayerReady-Must-Include-Funktion http://shazwazza.com/post/Injecting-JavaScript-into-other-frames.aspx hinzu
Fügen Sie die Ereignis-Listener usw. hinzu.
Hoffe das hilft
quelle