我编写了一个小程序来向学生演示 DO WHILE 循环。它使用<hr />
画一条线。然后要求确认以重复该操作。这是:
function drawline()
{
var draw = true;
do
{
document.getElementById("lineArea").innerHTML += "<hr />";
draw = confirm("Draw another line?"); // clicking "Yes" in a confirm box stores "true" in the variable 'draw'.
}
while (draw) // This is equivalent to "while (draw == true)"
document.getElementById("lineArea").innerHTML += "No more lines";
}
问题是它在 FF 和 IE 中运行良好,但在 Chrome 版本 57.0.2987.110 中运行不佳。在 Chrome 中,直到用户在确认框中按下“取消”才会出现任何行,然后出现的行数取决于在此之前按下“确定”的次数。 而且,当我在 Chrome 开发者工具中单步执行代码时,它按预期工作! 你知道这里发生了什么吗?我知道确认框经常令人不悦,但我想让代码对我的学生来说保持简单。
最佳答案
为什么不:
function drawLine() {
document.getElementById("lineArea").innerHTML += "<hr />";
}
<a id="addline" onclick="drawLine()">add line</a>
<div id="lineArea"></div>
关于javascript - JS 确认框在 Chrome 中行为异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42881079/