Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery根据一天中的小时数更改div_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用jQuery根据一天中的小时数更改div

Javascript 使用jQuery根据一天中的小时数更改div,javascript,jquery,html,Javascript,Jquery,Html,任何想尝试一下的人,我真的需要你的帮助 我有几行php,根据一周中的哪一天切换js文件。 在每个js文件中,我需要它根据时间隐藏/显示一个div。出于某种原因,这是行不通的。有什么想法吗 $(document).ready(function () { //initialize on-air functions for Sunday... Yay it's Jesus day! var d = new Date(); var currentHour = d.getHours();

任何想尝试一下的人,我真的需要你的帮助

我有几行php,根据一周中的哪一天切换js文件。 在每个js文件中,我需要它根据时间隐藏/显示一个div。出于某种原因,这是行不通的。有什么想法吗

$(document).ready(function () {

//initialize on-air functions for Sunday... Yay it's Jesus day!
    var d = new Date();
    var currentHour = d.getHours(); //0-23

    if (currentHour > 5 && currentHour < 6) 
     { 
         $('#no_onair').hide();
         $('#newdimesion_onair').show();


      }
      else if (currentHour > 6 && currentHour < 7) 
     { 
         $('#no_onair').hide();
         $('#artfthesong_onair').show();


      }
      else if (currentHour > 8 && currentHour < 10) 
     { 
         $('#no_onair').hide();
         $('#thejazzshow_onair').show();


      }

    else if (currentHour > 11 && currentHour < 13) 
     { 
         $('#no_onair').hide();
         $('#rob_onair').show();


      }


      else if (currentHour > 13 && currentHour < 14) 
     { 
         $('#no_onair').hide();
         $('#nick_onair').show();


      }

       else if (currentHour > 16 && currentHour < 18) 
     { 
         $('#no_onair').hide();
         $('#stadler_onair').show();



      }
    else {
       $('#no_onair').show();
       }

setTimeout(function() {
     $('#fixed_onair').addClass('animated fadeInDown');
     $('#fixed_onair').show();
},  5100);

});
$(文档).ready(函数(){
//周日开始播放节目…耶,今天是耶稣节!
var d=新日期();
var currentHour=d.getHours();//0-23
如果(当前小时>5和当前小时<6)
{ 
$('no#onair').hide();
$('newdimension'u onair').show();
}
否则如果(当前小时>6和当前小时<7)
{ 
$('no#onair').hide();
$('artfthesong_onair').show();
}
否则如果(当前小时>8和当前小时<10)
{ 
$('no#onair').hide();
$('thejazzshow'onair').show();
}
否则如果(当前小时>11和当前小时<13)
{ 
$('no#onair').hide();
$('rob_onair').show();
}
否则如果(当前小时>13和当前小时<14)
{ 
$('no#onair').hide();
$('nick_onair').show();
}
否则如果(当前小时>16和当前小时<18)
{ 
$('no#onair').hide();
$('stadler_onair').show();
}
否则{
$('no#onair').show();
}
setTimeout(函数(){
$('fixed_onair').addClass('animated fadeInDown');
$('fixed_onair').show();
},  5100);
});

我不知道为什么要使用php交换JS文件。最简单的方法是将CSS类分配给div,然后使用jQuery隐藏/显示

下面是一个有效的代码片段。这将在加载时显示正确的div。如果你想为已经在网站上的人动态地交换它们,你可以设置一个计时器,每xx分钟检查一次,并运行相同的代码。如果需要,每个循环可能都可以优化,但似乎没有那么多div。无论哪种方式,都比使用PHP注入脚本要好得多

周日1,2,3,4
星期日5、6、7、18
星期一1、2、3、4
星期一5、6、7、8
$(文档).ready(函数(){
$(“div.all”).hide();
变量日期=新日期();
var d=date.getDay();
var h=date.getHours();
console.log('搜索'+d+'和'+h');
$(“div.all”)。每个(函数(){
if($(this.hasClass(“d”+d)和&$(this.hasClass(“h”+h)){
$(this.show();
}
});
});

currentHour>5和¤tHour<6
将始终为false。与
currentHour>6和
currentHour<7和
currentHour>13和
(currentHour>=5&¤tHour谢谢!我会尝试一下,让你知道它是否有效。我正在为一家广播电台制作一个广播部分……我想如果我将js分成单独的几天,这将是最容易管理的。因此,对于每一天,它都会显示当前播放的dj。因此,我只是使用php获取一周中的某一天,并插入如果div的内容是静态的,那么就只需要Dj的名字和静态的blurb/picture/…我就可以用javascript完成上面概述的全部工作。只需要给每个div几天几小时的CSS类标识,并使用jquery显示匹配的类。我会n执行setInterval,而不是每1分钟运行一次来执行代码,以防有人整天打开浏览器。上述代码对您来说应该非常适合。感谢您的帮助。这非常有效!我如何在其中添加分钟?诀窍是确保您的CSS类符合您的需要。在几分钟内,您可以添加m1、m2…类,但at很快就会变得麻烦。如果有一个分钟(或整个日历)的模式,您可以根据该模式创建类名:例如,d0s1_15e8_30,用于周日节目,从1:15开始到8:30结束,然后根据时间/天动态构建类名,并应用上述相同逻辑。