2017-07-13 4 views
0

Ich versuche zu zeigen, wenn ein Geschäft geöffnet ist oder nicht, auf ihrer Website. Der Laden ist 7 Tage die Woche von 07:30 bis 22:00 Uhr geöffnet. Jetzt konnte ich es täglich von 07:00 bis 22:00 Uhr anzeigen, mit Hilfe dieser answer (JSFiddle). Aber ich kann es nicht ab 07:30 Uhr machen, was ist der beste Weg, dies zu tun?Öffnungszeiten Benachrichtigung (07:30 bis 22:00) Javascript

Javascript:

var checkOpenStatus = function() { 
    var d = new Date(); 
    var date = d.getHours(); 
    if ((date > 9) && (date < 20)) { 
     y = "<span style=\"color:#07ed11\">We're Open!</span>"; 
    } else { 
     y = "<span style=\"color:#fc4b1c\">Sorry we're Closed.</span>"; 
    } 
    document.getElementById("open-close").innerHTML = y; 
}; 

checkOpenStatus(); 

HTML

<div id="open-close"></div> 
+0

'var Minuten = d.getMinutes();' –

+0

var Minuten = d.getMinutes(), es dann in Ihrer wenn Bedingung verwenden. – SamB

Antwort

2

Wenn die Stunde ist 9 dann überprüfen Sie müssen auch, dass die Minuten sind mehr als 30.

var d = new Date(); 
var h = d.getHours(); 
var m = d.getMinutes(); 
if ((h > 9 || (h == 9 && m >= 30)) && (h < 20)) { 

Unten ist eine angepasste Version der Funktion, die das Datum eingibt, um die Logik zu beweisen. Führen Sie das Skript aus und überprüfen Sie die Konsole.

var checkOpenStatus = function (d) { 
 
    //var d = new Date(); 
 
    var h = d.getHours(); 
 
    var m = d.getMinutes(); 
 
    if ((h > 9 || (h == 9 && m >= 30)) && (h < 20)) { 
 
     y = "<span style=\"color:#07ed11\">We're Open!</span>"; 
 
    } else { 
 
     y = "<span style=\"color:#fc4b1c\">Sorry we're Closed.</span>"; 
 
    } 
 
    console.log(d, y); 
 
}; 
 

 
checkOpenStatus(new Date(2017, 1, 1, 9, 0)); 
 
checkOpenStatus(new Date(2017, 1, 1, 9, 10)); 
 
checkOpenStatus(new Date(2017, 1, 1, 9, 20)); 
 
checkOpenStatus(new Date(2017, 1, 1, 9, 30)); 
 
checkOpenStatus(new Date(2017, 1, 1, 9, 40)); 
 
checkOpenStatus(new Date(2017, 1, 1, 10, 40)); 
 
checkOpenStatus(new Date(2017, 1, 1, 20, 00)); 
 
checkOpenStatus(new Date(2017, 1, 1, 23, 00));

Verwandte Themen