我的网站上有一个主题切换器,希望添加一个“自动”选项,可以在日落时更改主题。目前我通过手动指定时间来完成此操作,但我想知道是否可以使用类似于PHP date_sunset()函数的实际日落时间实际执行此操作。
var url, hour = new Date().getHours();
if (hour > 8 && hour < 17) {
$('body').removeClass().addClass('light');
} else if (hour > 17 || hour < 8) {
$('body').removeClass().addClass('dark');
}
这可能吗?如果是这样,我将如何在上面的代码中实现它?
另外,如果有可能的话,可以很容易地说在日落时间增加60分钟,因为日落时间通常是在实际变暗之前的一点点。
这可能是不可能的,但我知道这个地方是最好的地方来仔细检查!!
提前致谢。
答案 0 :(得分:0)
是否有必要在JavaScript中实现它?如果没有,这段代码怎么样:
<body class="<?php echo time() < date_sunset(time()) ? 'light' : 'dark'; ?>">
对评论的反应有所改善:
PHP
<body data-daypart="<?php echo time() < date_sunset(time()) ? 'day' : 'night'; ?>">
JS
var body = $('body');
body.removeClass().addClass(body.attr('data-daypart') === 'day' ? 'light' : 'dark');