Как открыть доступ на страницу сайта только в определенное время?
На сайте есть страница к которой должен быть доступ в установленное время. Например, каждый день на 60 минут.
Как разрешить доступ к странице только с 10:00 до 11:00? А в остальное время чтобы страница была закрыта.
Сергей Соколов, Добрый вечер. Страница может быть видимой. Просто чтобы на страницу ограничить доступ. Может быть, чтобы страница не реагировала на клики или просто надпись, что сейчас нету доступа (доступ будет открыт в ≈10 часов)
france21, разумеется. В странице сделать две секции. Одну показывать, когда можно, другую когда нельзя («нет доступа»). Схема структуры:
<html><head><!-- ... --></head><body>
<section id="when-is-open">
<!-- тут бесценное содержание, когда можно -->
</section>
<section id="when-is-closed" class="hidden">
<!-- тут предложение заглянуть строго в правильное время -->
</section>
</body>
CSS класс "hidden" должен прятать display: none Так по умолчанию, если скрипты не работают, видна нормальная страница (в т.ч. поисковикам).
Далее JS должен посмотреть, сколько время сейчас в браузере у посетителя. И при необходимости вмешаться и добавить класс "hidden" основному блоку, и убрать его же у заглушки. Element.classList.add("hidden"), Element.classList.remove("hidden").
Если хочется, чтобы страница, когда уже открыта, в назначенное время на глазах изумлённого посетителя вдруг переключилась, можно по setInterval() каждые 5 секунд, например, смотреть на часы и добавлять/убирать класс как требуется.
Чем больше знаю, тем лучше понимаю, как мало знаю.
Если страница генерируется скриптовым языком (например PHP) - в начале скрипта можно вставить определение текущего времени, и соответствующее поведение...
AUser0, Может сделать ссылку на страницу, и чтобы ссылка работала только 60 минут. Но тогда доступ к странице будет обычным, без ограничения в 60 минут. Правильно?