0

我使用 iframe 在我的许多网站上成功实施了静态播放器。到目前为止,这已经达到了我的目的,并且实现起来有点复杂。我经常需要通过 php 中的 GET 变量传递“框架”状态。我的一个客户一直有显示问题,很高兴看到网址出现在地址栏中,这让我重新思考我的方法。

在查看 Beatport 的 html5 播放器源时,似乎他们使用的是 javascript 实例化播放器,看起来非常剖析和精确。那么......他们是否在跟踪玩家状态并将这些变量从一个页面传递到另一个页面?他们的平台是什么?带ajax的php?节点.js?红宝石?这是异步 i/o 在工作吗?或者只是 html5 的音频对象提供的酷炫?这是我想了解的,因为我可能必须为未来的应用重新定位我的整个方法。

此外,soundcloud player api 会吐出进度位置吗?任何帮助是极大的赞赏。

4

1 回答 1

1

据我所知,Beatport 网站是完整的 ajax,没有实际的页面重新加载,当您单击链接时,主站点内容会动态重新加载。地址栏中的位置更改可以通过javascript完成(http://stackoverflow.com/questions/1457/modify-address-bar-url-in-ajax-app-to-match-current-state)

我建议为这种功能使用某种框架。我不熟悉 PHP 框架环境,但在 SO 上听说过http://agiletoolkit.org/似乎提供了这种功能

Soundloud 播放器确实会“吐出”更新。它记录在他们的 API 中:

http://developers.soundcloud.com/docs/custom-player#events

onMediaTimeUpdate.scPlayer在播放器播放时不断触发,可用于在播放器节点之外显示轨道进度

$(document).bind('onMediaTimeUpdate.scPlayer', function(event){
console.log(event.target, 'the track is at ' + event.position + ' out of ' + event.duration    + ' which is ' + event.relative + ' of the total');
});
于 2013-01-05T20:21:38.737 回答