JavaScript для воспроизведения видео YouTube не работает - PullRequest
1 голос
/ 30 марта 2012

html

<html>
<head>
<style type="text/css">    body {    background-color: transparent;    color: white;    }    
</style>    
</head>
<body style="margin:0">    
<embed id="yt" src="http://www.youtube.com/v/6eK-W32IME0?fs=1&hl=en_US&enablejsapi=1" type="application/x-shockwave-flash" width="330" height="200"></embed>
</body>
</html>

Код, который я запускаю для воспроизведения видео:

var yt = document.getElementById("yt");
yt.playVideo();

Я получаю ошибку JS

TypeError: Object #<HTMLEmbedElement> has no method 'playVideo'

Но похоже, что так делают все остальные.Что за сделка?

** РЕДАКТИРОВАТЬ **

jsfiddle

** РЕДАКТИРОВАТЬ **

ТекущийJSFiddle теперь отлично работает на ПК / Mac, но не на iPad.

Ответы [ 2 ]

4 голосов
/ 31 марта 2012

Я думаю, вам нужно добавить &enablejsapi=1 к строке запроса URL-адреса, ссылающегося на видео в вашем <embed> объекте.

Также попробуйте заменить элемент <embed> на элемент <object>.Вот рабочий пример .

Примечание о iOS / Mobile Webkit:

Видимо, согласно этот ответ ,Apple явно запрещает автоматическое управление встроенными медиафайлами в Safari или других браузерах Mobile Webkit, требуя от пользователя iOS прямого взаимодействия с видеообъектом для запуска воспроизведения.Это касается элементов object и embed, а также элементов HTML5 video и audio.

1 голос
/ 30 марта 2012

вы не загружаете API JS, попробуйте это:

<embed id="yt" src="http://www.youtube.com/v/6eK-W32IME0?fs=1&hl=en_US&enablejsapi=1" type="application/x-shockwave-flash" width="330" height="200"></embed>   

чтобы узнать больше о youtubes JS api check https://developers.google.com/youtube/js_api_reference

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...