#javascript #dom-events
#javascript #dom-события
Вопрос:
У меня очень странное поведение, я не понимаю, почему это происходит
Консоль.журнал в конце печатается один раз в конце выполнения скрипта, а затем снова для каждого происходящего события, и массив tempOutput отображается три раза, каждый раз с разными значениями.
var tempOutput = []
if (limited) {
var selectseries = mvc.Components.getInstance('selectseries');
selectseries.on("change", function(event) {
let vfx = setInterval(
function() {
dropSelect.classList.add('pulse-on');
setTimeout(
function() {
dropSelect.classList.remove('pulse-on')
}, 1200
)
}, 2400);
defaultTokenModel.on("change:" dropDownTyp.tokenName, function(e) {
if (vfx) {
clearInterval(vfx);
document.querySelector('#drop_arrow').style.background = ''
}
});
} else {
dropSelect.setAttribute('value', '<Select ' label '>')
dropSelect.classList.add('disable')
}
})
}
console.log("how much?")
console.log(tempOutput)
Я ожидал бы увидеть массив, напечатанный один раз, и один раз «сколько?»
Комментарии:
1. Приведенный вами код заключен в
function
или его в глобальную область видимости. Если она находится в глобальной области видимости, то наличие нескольких журналов невозможно2. обернут внутри функции
3. попробуйте объявить
vfx
в глобальной области видимости и удалитьlet
изнутри. А также в конце появляется ошибка синтаксического анализа, еще одна дополнительная}
.4. @MaheerAli нет .. проблема не в этом 🙁