snk
1
Тест пишет, что окно не зарывается по Esc, но оно закрывается!
const popup = document.querySelector(`.popup`);
const showBtn = document.querySelector(`.button-show`);
const closeBtn = popup.querySelector(`.button-hide`);
showBtn.onclick = function (evt) {
evt.preventDefault();
popup.classList.add(`popup--open`);
document.onkeydown = function (evt) {
if (evt.key === `Escape`) {
popup.classList.remove(`popup--open`);
}
};
};
closeBtn.onclick = function () {
popup.classList.remove(`popup--open`);
};
snk
2
Проблему нашел, он не засчитывает evt.key. Через evt.keyCode работает. Но это как-то странно.
var popup = document.querySelector(`.popup`);
var showBtn = document.querySelector(`.button-show`);
var closeBtn = popup.querySelector(`.button-hide`);
var closePopup = function() {
popup.classList.remove('popup--open');
};
showBtn.addEventListener('click', function(evt) {
evt.preventDefault();
popup.classList.add('popup--open');
document.addEventListener('keydown', function(evt) {
if (evt.keyCode === 27) {
closePopup();
}
});
closeBtn.addEventListener('click', function() {
closePopup();
});
});
const popup = document.querySelector('.popup');
const openPopup = document.querySelector('.button-show');
const closePopup = document.querySelector('.button-hide');
openPopup.addEventListener('click', (e) => {
e.preventDefault();
popup.classList.add('popup--open');
});
closePopup.addEventListener('click', (e) => {
e.preventDefault();
popup.classList.remove('popup--open');
});
document.addEventListener('keydown', (e) => {
if (e.keyCode === 27) {
popup.classList.remove('popup--open');
}
});
я надеюсь за это отдельный котел в аду есть
upd: сорян, не знал что проверка кривая и только на keyCode срабатывает =)
let popup = document.querySelector('.popup');
let openPopup = document.querySelector('.button-show');
let closePopup = popup.querySelector('.button-hide');
openPopup.addEventListener('click', (evt) => {
evt.preventDefault();
popup.classList.add('popup--open');
});
closePopup.addEventListener('click', () => {
popup.classList.remove('popup--open');
});
document.addEventListener('keydown', (evt) => {
if (evt.keyCode === 27) {
popup.classList.remove('popup--open');
}
});
Не проходит проверку. Что не так?
Eleven
8
Добрый день!
У нас были временные неполадки с проверками заданий и испытаний. Сейчас всё работает в штатном режиме. Ваш код успешно проходит проверки.