为什么模态出现然后消失?
Why modal appears and then disappears?
我认为我用最少的 JS 编写了非常简单的模态代码。
当按下按钮时,模态出现一秒钟,页面刷新并且模态消失。
我不知道可能出了什么问题。提前致谢!
https://jsfiddle.net/wj3r2qzu/
var modalBtn = document.querySelector("#modal-btn");
var modalBg = document.querySelector(".modal-bg");
var modalClose = document.querySelector(".modal-close");
modalBtn.addEventListener("click", function() {
modalBg.classList.add("bg-active");
});
modalClose.addEventListener("click", function() {
modalBg.classList.remove("bg-active");
});
在您的注册按钮中添加一个 type="button"
。
<button class="primary-btn" type="button" id="modal-btn">Sign Up</button>
默认情况下,表单内的按钮是type="submit"
,所以当你点击它时,表单正在提交。
正如 Anurag 所说,该按钮默认为 type="submit",在表单内将尝试重定向,您可以在 js 中做的另一件事是阻止该按钮的默认行为。
modalBtn.addEventListener("click", (ev) => {
ev.preventDefault();//you can prevent the default action for that button
modalBg.classList.add("bg-active");
});
希望这对您有所帮助。
我认为我用最少的 JS 编写了非常简单的模态代码。 当按下按钮时,模态出现一秒钟,页面刷新并且模态消失。 我不知道可能出了什么问题。提前致谢!
https://jsfiddle.net/wj3r2qzu/
var modalBtn = document.querySelector("#modal-btn");
var modalBg = document.querySelector(".modal-bg");
var modalClose = document.querySelector(".modal-close");
modalBtn.addEventListener("click", function() {
modalBg.classList.add("bg-active");
});
modalClose.addEventListener("click", function() {
modalBg.classList.remove("bg-active");
});
在您的注册按钮中添加一个 type="button"
。
<button class="primary-btn" type="button" id="modal-btn">Sign Up</button>
默认情况下,表单内的按钮是type="submit"
,所以当你点击它时,表单正在提交。
正如 Anurag 所说,该按钮默认为 type="submit",在表单内将尝试重定向,您可以在 js 中做的另一件事是阻止该按钮的默认行为。
modalBtn.addEventListener("click", (ev) => {
ev.preventDefault();//you can prevent the default action for that button
modalBg.classList.add("bg-active");
});
希望这对您有所帮助。