在特定日期/时间打开模态

时间:2013-09-23 15:44:37

标签: javascript jquery

我一直在开发一个网络应用程序,我想知道是否有办法在特定日期/时间显示模型。

在应用程序中,用户可以预订任务或提醒,因此当我从数据库中读取特定的任务时,我想在用户指定的日期/时间安排模式的显示。

例如,用户在14:00在2013-09-23预订任务,我想在模态中显示一条消息。

我知道我们可以用JavaScript设置时间间隔:

setInterval(function () { 
    showModal(); 
}, 10 * 1000);

但如何指定样本中的小时?

3 个答案:

答案 0 :(得分:0)

setInterval通话中,10 * 1000表示10次10​​00毫秒,或者换句话说10秒。如果你想要一个小时,它只是一个更大的数字。 1000 * 60 * 60是一个小时。

但是,setInterval用于多次运行函数。除非您希望每隔小时调用,否则您可能正在寻找setTimeoutsetTimeout计划在时间段到期后运行一次的函数。

答案 1 :(得分:0)

你可以这样试试。

  1. setInterval() 继续运行。
  2. 比较日期,将其转换为 milliseconds 。和比较条件。

  3. setInterval(function () { 
     var date = new Date("2013-09-23 14:00");
     var schDateSecs = Date.parse(date);
     var currentDate = new Date();
     var schCurrentSecs = Date.parse(currentDate);
     if (schDateSecs == schCurrentSecs) {
        //execute
        showModal(); 
     }
    }, 10 * 1000);
    

答案 2 :(得分:0)

谢谢大家的回答,他们帮助我找到了解决方案:

function setNotification(notificationDate, notificationCallback){
     var currentDate = new Date();
     var date = new Date(notificationDate);
     var interval = date - currentDate; 

    if(interval > 0)
        window.setTimeout(function(){ notificationCallback(item)}, interval); //notificationCallback = showModal()

}