我正在运行一个随机(?)不显示我的SVG背景的网站。 如果我离开它,它会在一小时左右后再次开始工作。不知道这种情况发生的频率,但我想一天左右几次。
网站:
一个javascript在后台运行,并根据一天中的时间选择一个CSS。
<script>
<!--
function getStylesheet() {
var currentTime = new Date().getHours();
if (0 <= currentTime&¤tTime < 5) {
document.write("<link rel='stylesheet' href='css/night.css' type='text/css'>");
}
if (5 <= currentTime&¤tTime < 11) {
document.write("<link rel='stylesheet' href='css/morning.css' type='text/css'>");
}
if (11 <= currentTime&¤tTime < 16) {
document.write("<link rel='stylesheet' href='css/day.css' type='text/css'>");
}
if (16 <= currentTime&¤tTime < 21) {
document.write("<link rel='stylesheet' href='css/evening.css' type='text/css'>");
}
if (22 <= currentTime&¤tTime <= 24) {
document.write("<link rel='stylesheet' href='css/night.css' type='text/css'>");
}
}
getStylesheet();
-->
</script>
<noscript><link href="css/day.css" rel="stylesheet"></noscript>
4 CSS定义了要选择的SVG背景。
CSS文件是这样的。唯一改变的是CSS文件名和SVG文件。
body{
background: #BDC3C7;
background-image: url("/bilder/day.svg");
background-size:cover;
background-repeat: no-repeat;
}
服务器
的Apache2
硬件
Raspberry Pi 3
我试过的东西
起初我认为它与Apache有关并切换到Nginx。 Nginx上的确切问题。
然后我认为SVG必须部分损坏,然后将我在网上找到的四个文件副本(http://www.spriteland.com/sprites/downloads/night-background_SVG.svg)重命名为day.svg,night.svg,evening.svg和morning.svg。没有帮助。
发生这种情况的可能原因:
与CSS有关的事情
与Javascript有关的事情
与Raspberry Pi有关。
关于Raspberry Pi: 它没有实时时钟。我不确定它是如何检查我们的时间(我正在查看网站的机器,或某个地方的互联网上的时钟)。时区设置为欧洲/奥斯陆。
如果我愿意,网站将在一小时左右显示svgs,但我想弄清楚导致不显示SVG的随机性的原因。我茫然......
我认为我已经排除了服务器软件,因为我已经尝试过Nginx和Apache,以及SVGs文件本身。