У меня есть видео, которое воспроизводится на моей домашней странице, и когда я перехожу на другие страницы, которые он больше не показывает (это то, что я хочу). Но когда я нажимаю ссылку, чтобы вернуться на домашнюю страницу, я хочу, чтобы видео снова начинало воспроизводиться или даже отображалось. Я хочу, чтобы обновить страницу/состояние главной страницы, когда я перенаправляюсь к ней. Я попытался несколько способов попытаться добиться этого, но не повезло! Вот мой код, который у меня есть (это не включает то, что я пробовал).
Я хочу, чтобы это произошло, когда я нажимаю на главной странице, а затем на ссылку (показано в фрагменте index.html). Я хочу, чтобы страница возвращалась к исходному состоянию, когда видео показывалось и воспроизводилось. Но вы больше не видите видео. Предполагается, что когда я уезжаю и возвращаюсь на домашнюю страницу, контроллер не восстанавливается, поскольку он уже создан. Поэтому я хочу попробовать и обновить домашнюю страницу
Index.html
HomeCtrl
HomeSvc
App.js
Я ценю помощь!
Проблема в событии $routechangestart
делает проблему. Потому что, когда вы покидаете домашнюю страницу, плеер останавливается и удаляется из DOM. Но когда вы вернетесь на домашнюю страницу, он явно удалился.
Вы обязаны удалить игрока для его остановки? Продолжает ли игра, когда вы переходите на другую страницу, если вы ее не удаляете?
Попробуйте, удалив часть ниже и сообщите, что вы получите без
$scope.$on($routechangestart...);
РЕДАКТИРОВАТЬ
Я должен был бы посоветовать вам отказаться от этого плагина, очень плохого, по моему мнению. Когда вы используете Angular, вы должны продолжать работать с угловым плагином вместо jquery, у вас их так много! После быстрого исследования я нашел 2 поддерживаемых проекта, первый из которых является угловым видео-фоном, который кажется достаточно стабильным и богаче, чем okvideo. Второй - ngVideo, который делает почти то же самое. Выберите то, что вы хотите.
С этими двумя угловыми плагинами основным преимуществом является управление воспроизведением/паузой. Затем вы держите своего наблюдателя на $routechangestart
внутри вас, чтобы заставить паузу и играть в зависимости от того, что вы достигнете. Но одна верная вещь, оставьте это плагин jquery okvideo
EDIT 2
Взгляните на видеоролик, кажется, очень популярен