0

close我希望实现该程序在用户单击按钮之前不会继续执行代码中的下一行messageDialog。那可能吗?

在此示例中,我希望将文档背景颜色更改为红色,直到用户单击close。在此之后它将回到白色背景。所以我希望只有当 messageDialog 处于活动/可见/显示时才具有红色背景。

Globals["messageDialog"]("Something went wrong!", "#FF0000");

WinJS.Namespace.define("Globals", {
    messageDialog: function (string) {
        Windows.UI.Popups.MessageDialog(string).showAsync();
        document.body.style.backgroundColor = "#FF0000";
    }
});
4

2 回答 2

1

当然,showAsync()返回一个仅在用户关闭对话框时完成的承诺。所以只需写一些类似的东西

Windows.UI.Popups.MessageDialog(string).showAsync().done(function () {
    document.body.style.backgroundColor = "#FF0000";
});
于 2013-04-11T12:31:09.503 回答
0

使用等待关键字

await Windows.UI.Popups.MessageDialog(string).showAsync();

于 2013-04-12T07:23:47.297 回答