<div class="container">
<button id="dialogBtn">Show Dialog</button>
<p class="hidden" id="congratulationsText">Congratulations! You have accepted the offer!</p>
</di>
<dialog id="dialog">
<span id="closeBtn">X</span>
<p>Click the button below to accept the offer</p>
<button id="acceptOfferBtn">Accept Offer</button>
</dialog>
body,
html {
height: 100%;
width: 100%;
margin: 0;
padding: 0;
}
.container {
height: 100%;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
}
#closeBtn:hover {
cursor: pointer;
}
.hidden {
display: none;
}
/* * https://frontendeval.com/questions/modal-overlay * * Build a modal control and overlay */
const dialogBtn = document.getElementById(
"dialogBtn"
);
const dialog = document.getElementById("dialog");
const closeBtn = document.getElementById("closeBtn");
const acceptOfferBtn = document.getElementById("acceptOfferBtn");
const congratulationsText = document.getElementById("congratulationsText");
dialogBtn.addEventListener("click", (e) => {
dialog.showModal();
});
closeBtn.addEventListener("click", (e) => {
dialog.close();
});
acceptOfferBtn.addEventListener("click", (e) => {
congratulationsText.classList.remove("hidden");
dialogBtn.classList.add("hidden");
dialog.close();
});
View Compiled
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.