Size: a a a

JavaScript Noobs — сообщество новичков

2020 July 19

k

k a r 1 m in JavaScript Noobs — сообщество новичков
Чёт жёстко затупил, подскажите пожалуйста как решается эта задача?)
источник

S

Snake in JavaScript Noobs — сообщество новичков
Ivan Bobchenkov
Подскажите, не могу удалить слушатель события :(
openButton.addEventListener("click", openMenu);

в openMenu принимай аргумент e и делай e.preventDefault
источник

DZ

Daniil Zelenko in JavaScript Noobs — сообщество новичков
k a r 1 m
Чёт жёстко затупил, подскажите пожалуйста как решается эта задача?)
Вложеним циклом
источник

IB

Ivan Bobchenkov in JavaScript Noobs — сообщество новичков
Snake
openButton.addEventListener("click", openMenu);

в openMenu принимай аргумент e и делай e.preventDefault
Магия! Спасибо большое :)
источник

S

Snake in JavaScript Noobs — сообщество новичков
Ivan Bobchenkov
Магия! Спасибо большое :)
Не магия. Просто removeEventListener принимает ссылку на твою коллбек функцию вторым аргументом для удаления. Соответственно тебе нужно указать в регистрации ивента явную коллбек функцию и потом удалять её по её же ссылки.
источник

IB

Ivan Bobchenkov in JavaScript Noobs — сообщество новичков
Snake
Не магия. Просто removeEventListener принимает ссылку на твою коллбек функцию вторым аргументом для удаления. Соответственно тебе нужно указать в регистрации ивента явную коллбек функцию и потом удалять её по её же ссылки.
А, понял, т.е. ему нужно не функцию передавать в колбек, а ссылку?
источник

IB

Ivan Bobchenkov in JavaScript Noobs — сообщество новичков
Snake
Не магия. Просто removeEventListener принимает ссылку на твою коллбек функцию вторым аргументом для удаления. Соответственно тебе нужно указать в регистрации ивента явную коллбек функцию и потом удалять её по её же ссылки.
Вот сейчас вы объяснили примерно 40 минут поиска в гугле за 10 секунд :D
источник

S

Snake in JavaScript Noobs — сообщество новичков
Ivan Bobchenkov
А, понял, т.е. ему нужно не функцию передавать в колбек, а ссылку?
Ну ты можешь и анонимную функцию указывать, в тех случаях, когда тебе не придется потом удалять этот ивент.  А если придется - то только так.
источник

S

Snake in JavaScript Noobs — сообщество новичков
Но в твоём случае есть более красивое решение
источник

IB

Ivan Bobchenkov in JavaScript Noobs — сообщество новичков
Snake
Но в твоём случае есть более красивое решение
Какое?
источник

S

Snake in JavaScript Noobs — сообщество новичков
Ivan Bobchenkov
Какое?
openButton.addEventListener("click", (e) => {...}, {once: true});
источник

S

Snake in JavaScript Noobs — сообщество новичков
Таким образом e.preventDefault() и открытие меню можешь оставить внутри анонимного коллбека
источник

IB

Ivan Bobchenkov in JavaScript Noobs — сообщество новичков
Snake
openButton.addEventListener("click", (e) => {...}, {once: true});
Он отработает 1 раз и отвалится сам?
источник

S

Snake in JavaScript Noobs — сообщество новичков
А ивент после одного срабатывания удалит сам себя
источник

IB

Ivan Bobchenkov in JavaScript Noobs — сообщество новичков
Snake
Таким образом e.preventDefault() и открытие меню можешь оставить внутри анонимного коллбека
Класс! Спасибо огромное
источник

S

Snake in JavaScript Noobs — сообщество новичков
нз
источник

L

Lev Tonov in JavaScript Noobs — сообщество новичков
k a r 1 m
Чёт жёстко затупил, подскажите пожалуйста как решается эта задача?)
Что-то на подобе
for (let i = 0;i<=6;i++){
for(let j=0 ; j<=9;j++){
if (j<10){
0+ [i]
}
}
}
источник

k

k a r 1 m in JavaScript Noobs — сообщество новичков
Lev Tonov
Что-то на подобе
for (let i = 0;i<=6;i++){
for(let j=0 ; j<=9;j++){
if (j<10){
0+ [i]
}
}
}
А как при этом следующие ряды увеличивать
источник

L

Lev Tonov in JavaScript Noobs — сообщество новичков
k a r 1 m
А как при этом следующие ряды увеличивать
?
источник

k

k a r 1 m in JavaScript Noobs — сообщество новичков
Ну они же идут с 0 до 9
источник