Soundmanager: MySound не определен

#javascript #jquery #soundmanager2

#javascript #jquery #soundmanager2

Вопрос:

             soundManager.url = 'swf/';

            soundManager.createSound({
                id: 'mySound',
                url: 'http://localhost/htmlshooter/mp3/gun.mp3',
                autoLoad: true,
                autoPlay: true,
                volume: 100
            });

            function placeimage(){
                var t = $('<img src="img/php/target.png" alt="image" id="'    Math.floor(Math.random()*55)    '" onclick="doclickimg(this.id);">');
                $('#div').append(t);
                t.css('left', Math.floor(Math.random()*(800 - t.width())));
                t.css('top', Math.floor(Math.random()*(300 - t.height())));
                setTimeout(placeimage, 2000);
            }

            placeimage();

            function doclickimg(imgid){
                doclickdiv();
                $('#' imgid).remove();
                //  1 score
            }


            function doclickdiv() {
                mySound.play(); 
                // -1 bullet
            }
  

Теперь, когда я нажимаю на свой div, изображение не исчезает, и там написано, что MySound из MySound.воспроизведение в doclickdiv() не определено.

Пожалуйста, помогите мне! Почему это не работает?

Ответ №1:

Вы получаете эту ошибку, потому что mySound это еще не определенный объект. Вероятно, вам повезет больше…

 var mySound = soundManager.createSound({
    id: 'mySound',
    url: 'http://localhost/htmlshooter/mp3/gun.mp3',
    autoLoad: true,
    autoPlay: true,
    volume: 100
});
  

или…

 function doclickdiv() {
    soundManager.getSoundById('mySound').play(); 
    // -1 bullet
}
  

Ответ №2:

mySound не определен. Вы, вероятно, хотите изменить:

 soundManager.createSound({
            id: 'mySound',
            url: 'http://localhost/htmlshooter/mp3/gun.mp3',
            autoLoad: true,
            autoPlay: true,
            volume: 100
        });
  

Для

 var mySound = soundManager.createSound({
            id: 'mySound',
            url: 'http://localhost/htmlshooter/mp3/gun.mp3',
            autoLoad: true,
            autoPlay: true,
            volume: 100
        });