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);
}
}
});