Obtenir L'Heure Actuelle De La Vidéo YouTube
J'écris un Plugin de navigateur et j'ai besoin de trouver un moyen d'obtenir l'heure actuelle une vidéo YouTube jouant sur YouTube en utilisant JavaScript. J'ai joué dans la Console JavaScript Chrome et je n'ai pas eu de chance.
Il semble que l'API chrome ne fonctionne qu'avec les lecteurs vidéo intégrés et non avec une vidéo en cours de lecture youtube.com. une option que j'ai examinée est dans la section partager d'une vidéo leur est une boîte de saisie pour le temps" démarrer à: "qui contient l'heure actuelle de la vidéo. J'ai essayé d'utiliser .valeur et .texte sur cette zone de saisie et ils retournent tous les deux undefined? Quelqu'un aurait-il des idées?
4 réponses
ytplayer = document.getElementById("movie_player");
ytplayer.getCurrentTime();
Voir l'api
Dépend de ce que vous voulez
player.getCurrentTime():Number
Renvoie le temps écoulé en secondes depuis le début de la lecture de la vidéo.
player.getDuration():Number
Renvoie la durée en secondes de la vidéo en cours de lecture. Note cette getDuration() retournera 0 jusqu'à ce que les métadonnées de la vidéo soient chargées, ce qui se produit normalement juste après que la vidéo commence à jouer.
Enfin, j'ai trouvé comment le faire fonctionner sur iOS (et Android aussi).
En fait, l'ensemble Youtube JS api a été cassé pour moi si elle est exécutée sur un navigateur mobile.
Problème résolu par création lecteur en utilisant {[0] } comme décrit dans Youtube iframe API .
Veuillez noter: seule la création de <iframe>
à partir de <div>
espace réservé fonctionne pour les navigateurs mobiles à l'époque. Si vous essayez d'utiliser <iframe>
existant dans new YT.Player
appel, comme mentionné dans L'API IFrame, cela ne fonctionne pas.
Après la création du lecteur, il est possible d'utiliser player.getCurrentTime()
ou player.getDuration()
avec l'instance player
créée.
Note: je n'ai pas eu de chance d'appeler ces méthodes sur le joueur obtenu avecplayer = document.getElementById(...)
(de @ JosephMarikle réponse).
Seule l'instance player
créée fonctionnait dans les navigateurs mobiles.
Liens Utiles:
Juste pour info, il y a une nouvelle API iframe pour le lecteur YouTube: https://developers.google.com/youtube/iframe_api_reference