loadVideoById () в обычном плеере YouTube (не без хрома) - PullRequest
6 голосов
/ 16 декабря 2008

У меня есть проигрыватель YouTube на веб-странице. Мне нужно динамически менять видео, воспроизводимое этим плеером.

Это (относительно) легко с помощью хромированного плеера YouTube. У него есть метод loadVideoById(), который отлично работает. Проблема в том, что у Chromeless Player нет элементов управления (воспроизведение / пауза и т. Д.). В обычном плеере YouTube есть все это, но нет метода loadVideoById().

Есть ли способ включить элементы управления обычного игрока в проигрыватель Chromeless или реализовать метод loadVideoById() в обычном проигрывателе?

Спасибо.

Ответы [ 4 ]

5 голосов
/ 16 декабря 2008

Вы не можете сделать это, потому что вызовы в "обычном плеере YouTube" содержат VideoID в URL вместо параметра:

Вместо этого вы можете легко создать свою собственную функцию, которая изменяет встроенный SWF-файл. Я имею в виду, что вы используете swfobject для «Обычного игрока», а затем createSWF function Вы сможете динамически заменить предыдущее видео на текущее.

Надеюсь, это поможет вам.

3 голосов
/ 26 октября 2010
2 голосов
/ 15 мая 2011

К вашему сведению, есть также плагин jQuery, который может сделать это за вас и предоставить вам массу элементов управления!

http://tikku.com/jquery-youtube-tubeplayer-plugin

https://github.com/nirvanatikku/jQuery-TubePlayer-Plugin

1 голос
/ 27 февраля 2011

Мне было проще использовать loadVideoByUrl () в качестве альтернативы loadVideoByIdl () вместо использования createSWF, вам не нужно связываться с swfobject таким образом, это встроенная функция ... просто используйте видео Идентификатор для создания URL-адреса swf на YouTube, например: url = "http://www.youtube.com/e/" + VIDEO_ID +"? Enablejsapi = 1 & version = 3 "и отправьте с помощью функции loadVideoByUrl (), например: player.loadVideoByUrl (url)

Таким образом, вам не нужно связываться с объектом swfobject, это прописано здесь:

http://code.google.com/apis/youtube/js_api_reference.html#loadVideoById

"player.loadVideoByUrl (mediaContentUrl: String, startSeconds: Number): пусто Загружает и воспроизводит указанное видео.

    * The mediaContentUrl must be a fully qualified YouTube player URL in the format http://www.youtube.com/e/VIDEO_ID. In YouTube Data API video feeds, the url attribute of the <media:content> tag contains a fully qualified player URL when the tag's format attribute has a value of 5.
    * startSeconds accepts a float/integer and specifies the time from which the video should start playing. If startSeconds (number can be a float) is specified, the video will start from the closest keyframe to the specified time."
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...