Мои знания в области кодирования в основном являются самоучками и ограниченными.Множество iframe вставляются с youtube api
У меня есть форум, который я установил для замены URL-адресов youtube в сообщениях с iframe-рисунками видео. Единственным его уникальным аспектом было то, что он заставлял встраиваемые игры играть с качеством 720p (если доступно), даже если игрок был меньше, чем рекомендует youtube. «Почему» - длинная история, но я хочу продолжать делать это именно так. Я пытаюсь получить то же самое, что работает с новым API.
В примере ниже я могу заставить его работать для одного видео на странице, но не на той же странице. Я предполагаю, что это имеет какое-то отношение к дублирующим функциям или чему-то в этом роде.
<html><body>
<script>
\t var tag = document.createElement('script');
\t tag.src = "https://www.youtube.com/iframe_api";
\t var firstScriptTag = document.getElementsByTagName('script')[0];
\t firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
\t var xyzplayer;
\t function onYouTubeIframeAPIReady() {
\t xyzplayer = new YT.Player('xyzplayer', {
\t \t events: {
\t \t \t 'onStateChange': onPlayerStateChange
\t \t \t }
\t \t });
\t }
\t function onPlayerStateChange(event) {
\t if (event.data == YT.PlayerState.PLAYING) {
\t event.target.setPlaybackQuality('hd720');
\t \t }
\t }
</script>
<iframe id="xyzplayer" type="text/html" width="832" height="468" src="http://www.youtube.com/embed/M7lc1UVf-VE?enablejsapi=1&html5=1" frameborder="0"></iframe>
<br><br><br>
<script>
\t var tag = document.createElement('script');
\t tag.src = "https://www.youtube.com/iframe_api";
\t var firstScriptTag = document.getElementsByTagName('script')[0];
\t firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
\t var abcplayer;
\t function onYouTubeIframeAPIReady() {
\t abcplayer = new YT.Player('abcplayer', {
\t \t events: {
\t \t \t 'onStateChange': onPlayerStateChange
\t \t \t }
\t \t });
\t }
\t function onPlayerStateChange(event) {
\t if (event.data == YT.PlayerState.PLAYING) {
\t event.target.setPlaybackQuality('hd720');
\t \t }
\t }
</script>
<iframe id="abcplayer" type="text/html" width="832" height="468" src="http://www.youtube.com/embed/IwfUnkBfdZ4?enablejsapi=1&html5=1" frameborder="0"></iframe>
</body></html>
Что это нужно делать с Java? –
Вы правы. API JavaScript Player был устарел. Удален этот тег. – krrrrak