在实际日落时间更改身体等级


Change body class at actual sunset time

我的网站上有一个主题切换器,希望添加一个"自动"选项,在日落时更改主题。目前,我已经通过手动指定时间来完成了这项工作,但我想知道是否可以使用类似于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分钟,因为日落时间通常在天黑前一点。

这可能是不可能的,但我知道这个地方会是复查的最佳地方!!

提前谢谢。

是否需要在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');