如何在声音管理器中返回歌曲持续时间?
function item_duration(){
var song_item = soundManager.createSound({
id:'etc',
url:'etc',
onload: function() {
if(this.readyState == 'loaded' ||
this.readyState == 'complete' ||
this.readyState == 3){
return = this.duration;
}
}
});
song_item.load();
}
这是我的尝试,但它不起作用
答案 0 :(得分:1)
return
是关键字,而不是变量。 return this.duration;
是你想要的;跳过=
(这只会给你一个语法错误)
...但这没有多大帮助,因为 你要将它归还给谁?你需要调用另一个函数,它会持续一段时间。 item_duration
函数在调用createSound
后立即返回,然后异步加载文件
尝试这样的事情
function doSomethingWithTheSoundDuration(duration) {
alert(duration); // using alert() as an example…
}
soundManager.createSound({
id: …,
url: …,
onload: function() {
// no need to compare with anything but the number 3
// since readyState is a number - not a string - and
// 3 is the value for "load complete"
if( this.readyState === 3 ) {
doSomethingWithTheSoundDuration(this.duration);
}
}
});