Событие пожара в определенное время дня

Возможно ли, что javascript (решения jQuery тоже прекрасны) для запуска события/вызова функции в определенное время дня, например.

вызвать myFunctionA в 10:00

позвоните в myFunctionB в 14:00 и т.д..

Спасибо

Марк

Ответ 1

  • Получить текущее время
  • Получить в миллисекундах временную разницу между следующим временем выполнения минус текущее время
  • Settimeout с миллисекундами результата

Ответ 2

 /**
             * This Method executes a function certain time of the day
             * @param {type} time of execution in ms
             * @param {type} func function to execute
             * @returns {Boolean} true if the time is valid false if not
             */
            function executeAt(time, func){
                var currentTime = new Date().getTime();
                if(currentTime>time){
                    console.error("Time is in the Past");
                    return false;
                }
                setTimeout(func, time-currentTime);
                return true;
            }

            $(document).ready(function() {
                executeAt(new Date().setTime(new Date().getTime()+2000), function(){alert("IT WORKS");});
            });

Ответ 3

4html:

current date: <span id="cd"></span><br />
time to Alarm: <span id="al1"></span><br />
alarm Triggered: <span id="al1stat"> false</span><br />

JavaScript:

var setAlarm1 = "14"; //14:00, 2:00 PM
var int1 = setInterval(function(){
    var currentHour = new Date().getHours();
    var currentMin = new Date().getMinutes();
    $('#cd').html(currentHour + ":" + currentMin );
    $('#al1').html(setAlarm1 - currentHour + " hours");
        if(currentHour >= setAlarm1){
            $('#al1stat').html(" true");
            clearInterval(int1);
            //call to function to trigger : triggerFunction();
        }
    },1000) //check time on 1s

Пример: http://jsfiddle.net/yhDVx/4/