Автоматическое переключение картинок в зависимости от времени года (от месяца и тд.)
Подскажите, как подключать разные картинки в зимнее и летнее время автоматически. Есть ли такой скрипт, или может это будет php код? И есть ли у кого-то опыт работы с такой задачей, то поделитесь, пожалуйста.
|
Какие картинки? Все можно, можно распределить их по папкам соответственно сезону, названия которых описаны в массиве, индекс которых, это деление по модулю 3 номера месяца. Таким образом определили путь.
|
При заходе на страницу вам нужно взять индекс текущего месяца:
var currentMoth = new Date().getMonth(); метод getMonth возвращает число от 0 до 11, 0 это Январь Дальше вам нужно проверить какой на данный момент сезон: Например создать объект seasons:
var seasons = {
winter: [11, 0, 1],
spring: [2, 3, 4],
summer: [5, 6, 7]
autumn: [8, 9 , 10]
}
дальше пробегаться по нему и проверять какой из ключей включает индекс нужной поры и записать его в currentSeason; в папке images/ должно лежать 4 картинки с названиями winter.jpg, spring.jpg, summer.jpg, autumn.jpg дальше осталось только подставить на фон или в картинкy element.src = 'images/' + currentSeason + '.jpg'; или element.style.background = 'url(images/' + currentSeason + '.jpg)'; |
Цитата:
var month = 1 + new Date().getMonth(); var season = Math.floor(month % 12 / 3); Пример
<body>
<style>
html, body { display: flex; height: 100%; width: 100%; margin: 0; }
.⛅ {
font: 12.5em Apple Color Emoji, Segoe UI Emoji, Noto Color Emoji;
margin: auto;
}
</style>
<script>
var month = 1 + new Date().getMonth();
var season = Math.floor(month % 12 / 3);
// пример использования
var seasonName = ["winter", "spring", "summer", "fall"][season];
var seasonEmoji = ["☃", "🌱", "🏖", "🍂"][season];
var seasonColor = ["#f0f8ff", "#f1fff0", "#fefff0", "#fff4f0"][season];
var seasonPic = "pics/" + seasonName + ".jpg";
document.body.style.backgroundColor = seasonColor;
document.write('<p class="⛅">' + seasonEmoji + '</p>');
</script>
|
Ребятки, сервер все это должен делать, ибо это должно работать по такому же принципу как темы на сайтах - есть 4 каталога, в котором одинаковые имена файлов стилей, для него же и изображения для этих стилей, а также изображения используемые страницами непосредственно, без стилей, с теми же именами. Менять надо каталог подключения файла стиля, и изображений.
<?php
$season = explode(' ', 'winter spring summer autumn')[intval((date('n')%12)/3)];
?>
<!DOCTYPE HTML>
<html>
<head>
<link rel="stylesheet" type="text/css" href="<?=$season?>/file.css" />
... и т.д.
|
Это не стоит того, это элементарная задача, и она не стоит того, чтобы заводить сторонний сервис, который будет что-то вычислять, что можно в приложении подсчитать!
|
Цитата:
Не клиента это задача, если только речь не о банальности, у него есть куда важнее задачи, а html формировать, это забота сервера. |
| Часовой пояс GMT +3, время: 09:35. |