Я работаю над созданием фейерверк-шоу в javascript для моего завтрашнего рабочего дня, и у меня возникли некоторые проблемы с его автоматизацией.Я использую найденный фейерверк здесь , и он отлично работает, но это будет на веб-странице статуса, которую я разработал некоторое время назад, поэтому я хочу, чтобы фейерверк был автоматическим, а не по щелчку.
Я создал функцию на странице fireworks.js, которая выглядит следующим образом ...
function fireFireworks(){
var num = Math.floor(Math.random()*3) + 1;
for(i=0;i<num;i++){
createFirework();
}
}
Это будет использоваться для запуска от 1 до 3 фейерверков при вызове.Затем я настраиваю
setInterval('fireFireworks()', 5000);
Когда оба они определены в моем локальном файле, а не в файле fireworks.js, я получаю неверную ссылку на createFirework()
.
Так что я переместилfireFireworks()
прямо под функцию инициализации в fireworks.js, и тогда я получу неверную ссылку на fireFireworks()
, поэтому я переместил setInterval
в функцию intialize
, но я все еще получаю неправильную ссылку на fireFireworks()
.
Однако, если я изменяю подшивку для onmouseup
из document.addEventListener ('mouseup', createFireworks, true);to document.addEventListener ('mouseup', fireFireworks, true);
Он успешно создает несколько моих фейерверков.
Я предполагаю, что область действия setInterval играет здесь роль.Если бы кто-нибудь мог дать мне представление о том, как я мог бы автоматизировать это, а также некоторую информацию о том, почему моя установка не работает, я был бы очень признателен!