J'utilise l'API YouTube IFrame Player sans problème depuis des mois et j'ai commencé à voir cette exception récemment lorsque le lecteur se charge: en
Uncaught ReferenceError: ytcfg is not defined
inspectant l'iframe, je vois un appel réussi yt.setConfig
, mais ytcfg.set
échoue plus tard. L'API a-t-elle été modifiée récemment? N'importe quel paramètre du lecteur pourrait causer ce problème?
<script src="//s.ytimg.com/yts/jsbin/www-embed-player-vflnzmqns/www-embed-player.js" type="text/javascript" name="www-embed-player/www-embed-player"></script>
<script src="//s.ytimg.com/yts/jsbin/player-en_US-vflr--npw/base.js" name="player/base"></script>
<script>
yt.setConfig({
...
});
writeEmbed();
</script>
<script>
ytcsi.info('st', 35);
ytcfg.set({
"TIMING_ACTION": "",
"CSI_VIEWPORT": true,
"TIMING_INFO": {
"c": "WEB",
"yt_li": 1,
"cver": "1.20161112",
"yt_lt": "cold"
},
"CSI_SERVICE_NAME": "youtube"
});
;</script>
Il existe plusieurs variantes de ce problème:
https://issuetracker.google.com/issues/35178202 "ytcfg n'est pas défini" https://issuetracker.google.com/issues/35177930 "__ytRIL n'est pas défini"
javascript
youtube-iframe-api
referenceerror
Thomas Vanier
la source
la source
Réponses:
Ceci est un bug de Google. Cela se produit également sur la page des développeurs de Youtube. https://developers.google.com/youtube/youtube_subscribe_button
Les bogues suivants retracent ce problème.
https://code.google.com/p/gdata-issues/issues/detail?id=8569 (toujours actif - au 5 janvier 2017)
Veuillez voter sur ce bogue en utilisant les liens ci-dessous afin qu'il retienne leur attention. Ils sont assis dessus depuis le 9 septembre 2016 !!.
la source
Il semble que le bogue soit du côté de YouTube. Vous pouvez voir la même erreur JS ici: https://www.youtube.com/embed/U-xetxYwyak
la source
__ytRIL is not defined
erreur n'est toujours pas corrigéeCela a commencé à se produire même sur youtube.com lorsque vous cliquez sur le bouton "Partager" sous n'importe quelle vidéo, puis sur l'onglet "Intégrer" pour copier-coller le code html d'intégration. Certainement leur faute.
la source
J'ai eu le même problème. Le correctif temporaire utilisait des objets au lieu d'iframes. Cela a fonctionné pour moi.
la source