window.confirm对话框不允许元素样式更改完成应用。任何解决方法?

时间:2019-04-15 17:19:51

标签: javascript html

我正在使用一个JavaScript UI,该UI假定需要查看/检查用户某些网格元素,然后弹出确认信息以查询用户意图并相应地执行。 / p>

代码如下:

elements.forEach(x => {
    x.style.backgroundColor = "red";
    x.scrollIntoView();
    let r = confirm("Do you wish to alter element?");
    //function code
});

执行代码后,window.confirm不会等待元素样式更改完成以及元素本身滚动到视图中。

window.confirm的行为是否有解决方法?

1 个答案:

答案 0 :(得分:0)

您可以尝试强制Confirm()在具有超时的下一个事件循环中执行

elements.forEach(x => {
    x.style.backgroundColor = "red";
    x.scrollIntoView();
    setTimeout (function () {
        let r = confirm("Do you wish to alter element?");
        //function code
    }, 0)
});