2014-09-03 72 views
0

当您开始播放soundcloud中的音频时,您可以看到它在标题中播放,并且当您尝试移动/重定向到其他页面时,该歌曲将继续在标题中播放。可以通过java ee中的apache tiles完成吗?或者我应该只使用iframe作为页面的主体,或者应该只使用ajax作为主体的内容,并动态添加包含ajax结果的元素。如何在不中断音频播放器的情况下重定向页面正文?声音云像播放音频中的网页结构

回答

2

Soundcloud.com是一个JavaScript的single page application

我猜你的问题是:如何保持音频播放和更改页面内容。我也在猜测,当页面内容更新时,您希望的URL发生更改。

我们使用JavaScript和lousely执行以下操作:

  • 有一个包装对象来控制音频播放
  • 使用HTML5历史API,以应对地址变更
  • 上的地址变化,更新的内容页面

我们使用MVC,特别是Backbone。因此,我们不是直接使用History API,而是依靠Backbone.Router。我们还扩展了Backbone.View来构建一个名为Layout的类型。

因此,当Backbone.Router触发路由更改事件时,适当的Layout用来自URL的正确参数初始化。

所有这段时间,AudioManager对象都可以通过交互来切换和控制播放。

我希望这有助于您的研究方向。

有一对夫妇解释我们如何建立soundcloud.com会谈,但也许它会是了解JavaScript的SPA和MVC的一般概念,以便了解该材料是一个好主意:

+0

感谢@gyryzzly这个回答我所有的问题用的SoundCloud。我想我应该开始阅读关于SPA,我已经使用MVC已经与我的网络应用程序,因为它被建议是这样。 – 2014-09-04 01:03:30