【发布时间】:2020-02-16 23:01:18
【问题描述】:
我正在尝试将模式的显示值设置为在单击呼叫按钮后阻止。如果我进行了拼写,我无法弄清楚为什么即使我仔细检查了 JS 表也无法更改它(我的意思是通过窗口控制台检查值并检查它是否与我编写的 JS 表匹配)错误或以不同的方式命名元素,但我确信没有错误。曾经我认为onclick = () => 方法可能效果不佳,我改用addEventListener()。我确信当我在窗口控制台中对其进行编码时,它成功地将显示更改为阻塞,我也确信它作为普通模式显示在其他元素上,因此它也不会被隐藏。我在一些论坛上冲浪,其中包括初学者级别的问题,例如写style.display = block 而不是style.display: "block",但找不到任何相似之处。我一直在想我的类/id 符号有问题。
下面是代码: (index.scss)
.call {
position: fixed;
display: block;
}
.modal {
display: none;
position: fixed;
&-content {
display: block;
&-close {
display: block;
}
}
}
(index.js)
var call = document.querySelector("#call");
var modal = document.querySelector("#modal");
var close = document.querySelector("#close");
const openModal = () => {
if(modal.style.display === "none") {
modal.style.display = "block";
}
};
const closeModal = () => {
if(modal.style.display === "block") {
modal.style.display = "none";
}
}
call.addEventListener("click", openModal);
modal.addEventListener("click", closeModal);
(index.pug)
.call#call Iletisim
.modal#modal
.modal-content#content
span.modal-content-close#close ×
【问题讨论】:
标签: javascript html css sass pug