Je travaille sur un site qui contient une tonne de vidéos YouTube intégrées, le client souhaite afficher une fenêtre contextuelle chaque fois qu'une vidéo cesse de se diffuser.
J'ai regardé l'API youtube et il semble y avoir un moyen de détecter la fin d'une vidéo:
http://code.google.com/apis/youtube/js_api_reference.html
mais je ne peux pas intégrer les vidéos comme ils l'ont mentionné sur cette page car les vidéos sont toutes déjà sur le site (des milliers qui ont été ajoutées manuellement en collant le code d'intégration).
Existe-t-il un moyen de détecter la fin de ces vidéos sans changer aucune des vidéos existantes (en utilisant javascript)?
enablejsapi=1
. S'ils se trouvent dans une base de données, il devrait être assez facile de modifier l'src
attribut. Vous pourriez avoir besoin de certaines expressions régulières si elles sont insérées statiquement dans des fichiers HTML.Réponses:
Cela peut être fait via l'API du lecteur youtube:
http://jsfiddle.net/7Gznb/
Exemple de travail:
la source
Ce que vous voudrez peut-être faire est d'inclure un script sur toutes les pages qui fait ce qui suit ... 1. trouvez l'iframe youtube: recherchez-le par largeur et hauteur par titre ou en trouvant www.youtube.com dans sa source. Vous pouvez le faire en ... - en boucle dans les window.frames par une boucle d'entrée, puis en filtrant par les propriétés
injecter jscript dans l'iframe de la page actuelle en ajoutant la fonction onYoutubePlayerReady must-include-function http://shazwazza.com/post/Injecting-JavaScript-into-other-frames.aspx
Ajoutez les écouteurs d'événements, etc.
J'espère que cela t'aides
la source