我正在构建一个网络托管菜单的示例,该菜单将被分解为多个内容 block 。某些内容会在一天中的固定时间更改(早餐到午餐菜单)。内容会在适当的时间发生变化,但几秒钟后,之前的内容会在 1-2 分钟的过程中以闪烁的方式重新出现几次,然后才停止。
$( document ).ready(function() {
SetImage();
window.setInterval(SetImage,1000);
});
function SetImage(){
var nowdate = new Date() ;
var waketime = new Date();
waketime.setHours(6);
waketime.setMinutes(30);
var bedtime = new Date();
bedtime.setHours(12);
bedtime.setMinutes(00);
if(waketime < nowdate && nowdate < bedtime){
$('.day').show();
$('.night').hide();
}else{
$('.night').show();
$('.day').hide();
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="col content">
<img class="day" src="images/img05.jpg"/>
<img class="night" src="images/img07.jpg"/>
</div>
<div class="col sidebar">
<img class="day" src="images/img06.jpg"/>
<img class="night" src="images/img08.jpg"/>
</div>
http://damianzannini.com/HTH/index5.html
如前所述,我能够在适当的时间更改内容,但之前可见的(现在应该隐藏的)内容在几秒钟后继续重新出现(通常是闪烁的)。我的目标是让它一旦内容发生变化,就不会发生这种闪烁,并且在下一个指定时间之前内容不会发生变化。
最佳答案
在您的网站上,您将脚本放在 body 之外,这是一个问题。
我会尝试添加这个 css,这样当页面加载时,两者都会立即隐藏,因为 jquery 不会在 CSS 之前加载和运行。
.day, .night{display:none;}
关于javascript - 可查看的内容按设定的时间间隔更改 - 但之前的内容会在之后闪烁到 View 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55522896/