【问题标题】:Refresh/Reinitialize Home Page - Angular JS刷新/重新初始化主页 - Angular JS
【发布时间】:2015-07-03 04:50:04
【问题描述】:

我有一个视频在我的主页上播放,当我导航到其他页面时它不再显示(这是我想要的)。但是当我点击一个链接返回主页时,我希望视频重新开始播放,甚至显示出来。我想要做的是在我重定向回主页时刷新主页的页面/状态。我尝试了几种方法来尝试实现这一点,但没有运气!这是我拥有的代码(这不包括我尝试过的代码)。

我想要发生的事情是,当我点击离开主页然后点击链接(显示在 index.html sn-p 中)时,我希望页面回到视频显示时的原始状态并玩了。但是您不再看到视频。假设是当我离开并返回主页时,控制器不会重新初始化,因为它已经创建了。所以我想尝试刷新或重新初始化主页

Index.html

HomeCtrl

HomeSvc

App.js

感谢您的帮助!

【问题讨论】:

  • 您能否提供有关 HomeSvc 的更多信息,它应该做什么?与 HomeCtrl 相同。你能给出你的视频的html实现吗?
  • 对不起!我把不正确的 homeCtrl 放了起来。它是通过角度完成的。视频没有html代码。但我使用的是okfoc.us/okvideo 插件。除此之外,您在 homeSvc 和 homeCtrl 中看到的就是我所拥有的。我也更新了需求...

标签: angularjs html angular-ui-router route-provider


【解决方案1】:

事件$routechangestart 上的函数提出问题。 因为当您离开主页时,播放器会停止并从 DOM 中移除。但是当你回到主页时,他显然已经被删除了。

您是否有义务移除播放器以停止播放器?如果你不删除它,当你转到另一个页面时它会继续播放吗?

通过删除下面的部分来尝试它,并告诉你没有得到什么

 $scope.$on($routechangestart...);

编辑

我应该建议你放弃这个插件,在我看来非常糟糕。 当你使用 Angular 时,你应该继续使用 angular 插件而不是 jquery,你有这么多的插件!经过快速研究,我发现了两个维护的项目,第一个是angular-video-background,看起来足够稳定,比okvideo更丰富。第二个是ngVideo,它的作用几乎相同。选择你想要的。

使用这两个角度插件,主要优点是播放/暂停控制。然后,您将观察者保持在$routechangestart 上,根据您达到的内容强制暂停和播放。但可以肯定的是,留下这个 jquery 插件 okvideo

编辑 2

看看videogular好像很受欢迎

【讨论】:

  • 无论我导航到哪个页面,删除 $routechangestart 都会让视频继续播放。我希望视频不在我的其他页面上显示,但在我返回主页时显示并重新开始播放。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-17
  • 1970-01-01
  • 2015-03-29
  • 2013-08-13
  • 2016-07-15
  • 1970-01-01
相关资源
最近更新 更多