元素在Safari中根本不起作用

我正在尝试将音乐添加到我用JS和jQuery编写的虚拟游览应用程序中,到目前为止,我的代码(如下所示)在Chrome,FF,IE9和Opera中运行良好。 但是在Safari 5.1.7中,这是Windows机器的最新版本,它只是不起作用……通过我对问题的研究,我知道Safari不会自动播放音乐而且必须启动它手动,但当我点击播放按钮时,没有任何反应。 而且,顺便说一句,Safari中的代码检查器显示我的音频标签与音乐源一起存在,因此我认为它与DOM没有任何关系。 关于我的问题的任何想法?

HTML

Music:

Play

/

Pause

我在JS中的音乐对象

 var Music = { musicBtns: $('#musicBtns'), playBtn: $('#musicPlayBtn'), pauseBtn: $('#musicPauseBtn'), isPlaying: false, init: function() { if(!music.includeMusic) // If the client didn't want any music in the tour app, remove the music btns from the DOM { this.musicBtns.remove(); } else // Else, setup the audio element { var parent = this; var audio = $(' 

编辑:这可能是Safari中的错误吗?

所以问题结果与QuickTime有关。 我想我必须将它从机器上删除一段时间,因为我不认为我需要它。 重新安装QuickTime后,Safari使用音频标签播放音乐没有问题。 自动播放甚至也可以。

有点搞笑如何支持本机HTML5音频/video的冠军,不支持没有插件的HTML5音频/video……

在Safari上的HTML5video中我遇到了一个问题,我必须“加载”(我认为,要么启动缓冲区,要么加载整个内容),然后再将其设置为播放。 这似乎实际上使一些webkit浏览器中的东西工作。 所以类似于:

 var a = new Audio("file.mp3"); a.load(); a.play(); 

值得一试