javascript - JS 确认框在 Chrome 中行为异常

标签 javascript google-chrome confirm

我编写了一个小程序来向学生演示 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/

相关文章:

google-chrome - Google Chrome浏览器扩展程序-等待页面加载

javascript - 如何在浏览器中真正进行渲染(事件循环)

capybara - 如何使用 capybara + headless chrome 测试确认/警报消息

javascript - 从 $http GET 服务返回函数值

javascript - 未捕获错误 : Bootstrap's JavaScript requires jQuery version 1. 12.4 或更高版本,但低于日期时间选择器中的版本 3

javascript - 使用 javascript 和 jquery 加载外部字体

python - 在 Python 中使用 Selenium 下载 Chrome headless 文件

javascript - 我可以/如何使用带有 if 语句的 OnClick 吗?

c# - ASP.NET c# 修复函数库中自定义 ConfirmMessagebox 的 OK 事件

javascript - 如何在 AngularJS 中更改按钮的文本?