Javascript 如何创建一个在jQuery中没有触发任何事件的对话框?

Javascript 如何创建一个在jQuery中没有触发任何事件的对话框?,javascript,jquery,html,jquery-ui,jquery-mobile,Javascript,Jquery,Html,Jquery Ui,Jquery Mobile,我正在使用jQuery 1.9.1和jQuery Mobile 1.3.1,我想创建一个对话框,只有一个按钮,通知用户他们的时间到了。关键是,只要我能看到jQuery中的对话框出现在某些eventType之后。例如,单击按钮后,可以显示对话框。但在我的情况下,我没有任何事件,它必须在if语句中的条件为true时自动出现。当用户单击小部件上的OK按钮时,他/她应该被转移到下面提到的页面。你知道如何实现吗 function showTimer() { if (timestamp.getMin

我正在使用jQuery 1.9.1和jQuery Mobile 1.3.1,我想创建一个对话框,只有一个按钮,通知用户他们的时间到了。关键是,只要我能看到jQuery中的对话框出现在某些eventType之后。例如,单击按钮后,可以显示对话框。但在我的情况下,我没有任何事件,它必须在if语句中的条件为true时自动出现。当用户单击小部件上的OK按钮时,他/她应该被转移到下面提到的页面。你知道如何实现吗

function showTimer() {
    if (timestamp.getMinutes().pad(2) == "59" && timestamp.getSeconds().pad(2) == "59") {
        // dialog goes here...
        $.mobile.navigate("#finalPage");
    }
    return false;
}

使用setInterval启动计时器,并每隔x毫秒检查一次条件

使用jQuery即可:

//Initialise the dialog first
var dialog = $('<p>Are you sure?</p>').dialog({
    autoOpen:false,
    buttons: {
        "Cancel": function () {
            $.mobile.navigate("#finalPage"); // Your custom code for navigation on button click
        }
    }
});
setTimeout(function(){ // When your condition is met, just call the dialog using this code
    dialog.dialog('open');
},2000);
在这里,我使用timeout只是为了演示如何在任何阶段打开对话框而不触发任何单击


演示:

我收到一条错误消息:uncaughttypeerror:Object[Object Object]没有方法“dialog”,关于初始化对话框的部分。它在fiddle中工作正常。你确定你的代码中包含了jquery ui文件吗?我已经包含了jquery 1.9.1和jquery mobile 1.3.1,我还需要其他文件吗?我想是的。检查是否有jquery.ui.js和jquery.ui.css文件。您可以检查我提到的JSFIDLE中的外部资源选项。我检查了,但没有包括这两个选项。我现在包含了.js文件,但仍然得到了相同的错误。在my index.html中是否有任何特定的位置包含它?我是说在其他剧本之前还是之后?