我希望在我的网络上播放一些声音,这是我的代码,它是关于safari的工作,但是不能使用chrome。任何人都可以给我一个解决方案
$(button).click(function() {
$.ajax({
url : "messageaction",
type : "post",
dataType : "xml",
cache : false,
data : {
message : "msg_askmessg",
os : KHL_parameter.os,
usertype : KHL_parameter.usertype,
ver : KHL_parameter.ver,
messageid : msgid,
type : 2
}
}).done(function(responsedata) {
var source = context.createBufferSource();
var buffer = context.createBuffer($.processStreamVoice(responsedata), true); //$.processStreamVoice, is base64 decode for responsedata
source.buffer = buffer;
source.connect(context.destination);
source.noteOn(context.currentTime);
});
});
答案 0 :(得分:2)
尝试更改此内容:
source.noteOn(context.currentTime);
到此:
source.noteOn ? source.noteOn(0) : source.start(0);
noteOn
方法已被start
取代,但Safari尚未赶上。 0
的论点等同于context.currentTime
- 两者都将立即开始播放。