0

我有一个链接可以将歌曲加载到播放器中,然后当您单击播放器时,歌曲就会开始播放。这在 PC/Mac 上很好,但 iOS 需要在歌曲开始播放之前加载两次。所以我必须做的是以下几点:

我一直在 iPad 2 上对此进行测试。

  1. 点击链接加载歌曲
  2. 单击播放器开始播放歌曲 - 我得到旋转的“缓冲”进度轮,但没有播放歌曲
  3. 单击链接以第二次加载歌曲
  4. 歌曲开始播放

我知道iOS不会自动播放歌曲,但为什么我需要加载歌曲两次才能播放歌曲。这是代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Untitled</title>
<script src="js/jquery-1.7.1.min.js" type="text/javascript" language="javascript"></script>
<script src="js/jwplayer.js" type="text/javascript" language="javascript"></script>
<script type="text/javascript" language="javascript">
// <![CDATA[
$(document).ready(function() {
// Set up JWPlayer
jwplayer('track_player').setup({
flashplayer: "player.swf",
height: 200,
width: 400,
controlbar: 'bottom',
events: {
onReady: function(event) {
player = jwplayer('track_player');
}
}
});
});

var player = null; // JWPlayer reference

function loadFile() {
player.load({
'file':'http://www.mydomain.com/songs/song.mp3'
});
}
// ]]>
</script>
</head>
<body>
<a href="javascript:;" onclick="loadFile()">Load File</a><br /><br />
<div id="track_player"></div>
</body>
</html>

这是一个实时查看问题的链接。

http://www.tonedeafdesign.com/ios-audio-test.php

我确定我错过了一些东西。任何帮助是极大的赞赏。

谢谢。

4

1 回答 1

1

已解决 - 这就是改变的地方。我添加到配置中:

autostart: false

然后在 loadFile() 函数中将 .play() 链接到 .load(...) 的末尾,所以它看起来像这样:

player.load({'file':'http://www.mydomain.com/songs/song.mp3').play();
于 2012-06-28T11:55:50.473 回答