Задать вопрос
@Keterone

Функция срабатывает сама по себе?

Проблема такова:
я сделал функцию
const getS = selector => document.querySelector(selector)
const resPan = getS('.result_panel')

function btn_color(boolean){
    if(boolean == false){
    for(i=0; i < getS('.color_selector').children.length; i++){
        getS('.color_selector').children[i].style.background = colors[i]
        getS('.color_selector').children[i].classList.toggle('unaviable')
        getS('.color_selector').children[i].addEventListener('click', function(){
            resPan.style.color = this.style.background
            })
        }
    }

}

и к ней
getS('#txt_color').addEventListener('click', btn_color(false))

но функция срабатывает сама по себе. Какая может быть причина?
  • Вопрос задан
  • 119 просмотров
Подписаться 1 Простой Комментировать
Решение пользователя Kovalsky К ответам на вопрос (3)
lazalu68
@lazalu68
Salmon
Функция срабатывает потому что вы её вызываете:

getS('#txt_color').addEventListener('click', btn_color(false))


btn_color(false) это вызов функции. Если вы хотели передать обработчик который будет выполнять btn_color с аргументом false, то это как-то так:

getS('#txt_color').addEventListener('click', () => {
    btn_color(false)
})
Ответ написан
Комментировать