I am having an issue. My first IF statement doesn't work, but my ELSE IF and my ELSE statements do work, and I can't figure out why.
(function(){
var dateHeure = new Date().getHours();
var dateHeure = dateHeure.toString();
var $p = document.querySelectorAll('.change')[0];
console.log($texte);
if (dateHeure >= "6" && dateHeure < "11"){
$texte = "Good morning";
}
else if (dateHeure >= "11" && dateHeure < "14"){
$texte = "Enjoy your meal";
}
else if (dateHeure >= "14" && dateHeure < "18"){
$texte = "Good afternoon";
}
else if (dateHeure >= "18" && dateHeure < "22"){
$texte = "Good evening";
}
else {
$texte = "Good night";
}
$p.innerHTML=$texte + ", World";
})();
EDIT :
Here is the code that works perfectly for me. I did like you all said, I stopped turning the hours into strings, and now it's ok :
(function(){
var dateHeure = new Date().getHours();
var dateHeure = dateHeure.toString();
var $p = document.querySelectorAll('.change')[0];
var $texte = "";
if (dateHeure >= 6 && dateHeure < 11){
$texte = "Good morning";
}
else if (dateHeure >= 11 && dateHeure < 14){
$texte = "Enjoy your meal";
}
else if (dateHeure >= 14 && dateHeure < 18){
$texte = "Good afternoon";
}
else if (dateHeure >= 18 && dateHeure < 22){
$texte = "Good evening";
}
else {
$texte = "Good night";
}
$p.innerHTML=$texte + ", World";
})();