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