如何使提示只在事件侦听器完成后出现



我想做的是,如果我想继续(在温度结果之后(,我想提出一个提示问题。如果不想继续,那么每当我发出提示或警报时,都会退出页面BUTTT,它们会首先出现,而不是温度值。

const result = document.querySelector(".result") /// button
const change = document.querySelector(".change") /// button
const screen = document.querySelector(".ctF") //h1
const tscreen = document.querySelector(".screen") ///h1
const dta = [{
index: 1,
message: "Celcius to Fahrenheit"
}, {
index: 2,
message: "Fahrenheit to Celcius"
}]
let num = 0
let iV = 1
change.addEventListener("click", () => {
num++
if (num > dta.length - 1) {
num = 0
}
t(num)
})
function t(ss) {
let item = dta[ss]
let message = item.message
let index = item.index
iV = index
tscreen.innerHTML = message
screen.innerHTML = "Temperature"
}
result.addEventListener("click", changeTemp)
function changeTemp() {
const value = document.querySelector(".input").value ///input
let numbaW = 1
let numbaT = 2
if (numbaW == iV) {
let cetFa = value * (1.8) + 32
screen.innerHTML = Math.round(cetFa) + "°F"
window.addEventListener("message")
} else if (numbaT == iV) {
let fatCe = ((value - 32) * 5) / 9
screen.innerHTML = Math.round(fatCe) + "°C"
}
}

promptalert都在停止JavaScript事件循环
这意味着只要用户不点击";ok";则不会处理DOM修改
解决方案将在超时后发送给用户prompt

常规

setTimeout(() => {
let value = prompt("What's the value?");
alert(`Value: ${value}`);
});

应该为你表演把戏。

最新更新