Полностью не в состоянии понять сферу SoundManager (с примерами)

0

Извинения за отсутствие скрипки; просто пытаясь понять основы SoundManager 2 и терпеть неудачу.

Почему это не работает:

<script>
soundManager.setup({
  url: 'swf/',
  preferFlash: false,
  onready: function() {
    // Ready to use; soundManager.createSound() etc. can now be called.
  }
});
</script>

<script>
$(document).ready(function() {
  soundManager.createSound({
    id: 'mySound',
    url: 'audio/sound.mp3',
    autoLoad: true,
    autoPlay: true,
    volume: 50
  });
  mySound.play();
});
</script>

Но это делает:

<script>
soundManager.setup({
  url: 'swf/',
  preferFlash: false,
  onready: function() {
    soundManager.createSound({
      id: 'mySound',
      url: 'audio/mySound.mp3',
      autoLoad: true,
      autoPlay: true,
      volume: 50
    });
    mySound.play();
  }
});
</script>

Я не понимаю... вообще. Должен ли загружаться каждый звук в onready()? И если да, то как это отдаленно полезно для 90% случаев использования? Я должен что-то упустить. Примеры, которые они предоставляют, кажутся такими же легкими, что и в моем коде:

soundManager.createSound({
 id: 'mySound2',
 url: 'audio/mySound2.mp3'
});
soundManager.play('mySound2');

Но это не работает. Зачем?

  • 0
    API должным образом нужно сделать что-то на инициализации и прежде чем он будет готов к запуску. Если вы createSound до завершения загрузки API, произойдет ошибка. Вместо использования $(func..) качестве отправной точки, вы можете попробовать использовать onready и вызвать $(functio.. from inthere).
  • 0
    Как бы я использовал звуковые объекты вне собственного SM2 onready тогда, если он не загружен вовремя? Вы в основном говорите, что я не могу? Если это так, я действительно не понимаю смысла использования SM2.
Показать ещё 2 комментария
Теги:
soundmanager2

1 ответ

1
Лучший ответ

Из комментариев

API надлежащим образом должен сделать что-то на intialize и до того, как он будет готов к запуску. Если вы вызываете createSound до того, как API завершит загрузку, произойдет ошибка. Вместо использования $(func..) качестве отправной точки вы можете попробовать использовать onready и вызвать $(functio.. from inthere

Я сделал нерабочую скрипку, что я имею в виду: http://jsfiddle.net/YdC8j - Я не работаю с soundmanager. Я просто догадываюсь

Ещё вопросы

Сообщество Overcoder
Наверх
Меню