Инициализируйте видео.JS player на ajax загруженной части страницы

видеоплеер фактически загружается нормально. Моя фактическая проблема заключается в том, что когда я обновляю некоторые части своей страницы с помощью AJAX, и эти части содержат видеоплеер, проигрыватель HTML5 загружается нормально, но не видео.js часть, которая настраивает его.

видео.файл js загружается в заголовок страницы. Я прочитал документ и не могу найти, как инициализировать видеоплеер на странице, которая уже загружена. Нет myPlayer.initialize() вид функции, которую я могу вызвать, когда моя часть страница, содержащая видео, загружается для правильной загрузки видеоплеера с видео.Яш?

Я думаю, видео.файл JS делает это автоматически только при загрузке страницы.

Спасибо за вашу драгоценную помощь!

3 ответов


Да, согласно документам, которые вы можете сделать:

videojs("example_video_1", {}, function(){
  // Player (this) is initialized and ready.
});

это специально для использования с динамическим контентом:)

источник:http://docs.videojs.com/docs/guides/setup.html (внизу)


У меня была та же проблема. Мой сценарий:

загрузка через ajax html-код с тегом video, он работает в первый раз, но когда я загружаю контент с помощью ajax (не обновляя страницу), он не работает.

то, что я сделал, это переключиться на поиск видео через класс, так как идентификатор изменяется videojs.

Итак, теперь это мой звонок:

videojs(document.getElementsByClassName("video-js")[0], {}, function(){
          // Player (this) is initialized and ready.
});

надеюсь, это поможет кому-то с той же проблемой, где Бруно решение не работал.


Я сделал это в цикле

var massVideo = $('.video-js');
for(var i = 0; i < massVideo.length; i++){
  videojs(massVideo[i]).ready(function(){});
}