#animation #onload
#Анимация #загрузка
Вопрос:
У меня есть веб-сайт, где я хочу использовать несколько простых анимаций при загрузке страницы. Код анимации не является проблемой. Эта анимация представляет собой некоторое затухание меню и других элементов. Я буду называть это вступлением к моей странице. Я хочу, чтобы конечный пользователь видел эту анимацию ТОЛЬКО при посещении сайта и не видел, когда он нажимает на некоторые ссылки в меню и перемещается по моему сайту. На данный момент я разобрался с этим, разместив код анимации только на передней странице, но, например: что, если кто-то даст ссылку на mywebsite.com/news кому-то. Он зайдет на сайт и не увидит анимацию, потому что она только на главной странице. Есть решения? Возможно, я думаю о некоторых операторах session amp; cookies «if» с php, но я новичок и не знаю, как с этим справиться.
Ответ №1:
Сделайте свою домашнюю страницу всегда одинаковой и просто загрузите код других страниц. Я имею в виду, вы можете использовать фреймы или php-код с include(‘file.php ‘); например. Тогда ваша анимация всегда будет на одной странице, или просто загрузите фрейм на каждую страницу вашего сайта и анимацию в этом фрейме.
Комментарии:
1. Загрузка php-файла не имеет значения: это все на сервере, прежде чем он отправится клиенту. Размещение содержимого во фреймах возможно, но может привести к беспорядку — сложно удобно предоставлять ссылки на отдельные страницы, и это может сбить пользователя с толку, если он захочет распечатать что-либо с сайта. Поэтому я не поддерживаю эти предложения.
2. Я согласен с Колином Файном. Я хочу, чтобы ссылки работали нормально. Кстати, этот сайт является шаблоном Drupal 6. Я пробовал с некоторыми модулями drupal, но ничто не соответствует моим потребностям. Может быть, вы знаете что-нибудь. Этот вопрос вызывает проблемы везде, где я задаю…
3. Я не рекомендую вам использовать файлы cookie, потому что многие люди отключают их в проводнике. Но, если вы работаете с языком интерфейса сервера, сеансы могут быть хорошей работой. Вы можете проверить, активен ли сеанс (значит, пользователь видел анимацию) или нет (пользователь, который впервые, вы можете показать свою анимацию).
Ответ №2:
Вы просите свою систему (в целом) запоминать информацию между HTTP-запросами (выборками страниц). HTTP по своей конструкции является системой без состояния, поэтому вам придется использовать один из механизмов, которые были разработаны для запоминания информации: файлы cookie или сеансы (на стороне сервера). (На самом деле сеансы обычно реализуются с использованием файлов cookie, но вы можете рассматривать их как отдельные технологии).
Сеансы в PHP довольно просты в использовании: вы просто запускаете анимацию при создании нового сеанса. Но вам придется решить, как вы собираетесь решать, когда сеанс продолжается, а когда он истек и вам нужен новый.
Комментарии:
1. Хорошо, благодаря вам я предпринял несколько шагов. Но есть ли способ завершить сеанс, когда пользователь покидает сайт? Я пытаюсь найти способ сделать это в Интернете, но, похоже, этого очень сложно достичь
2. Что означает «покинуть сайт»? Когда они удаляются с вашего сайта? Но что, если у них открыта другая вкладка на вашем сайте — они оставили ее? Это то, что я имел в виду, говоря «вам придется разобраться, как вы … решите, когда сеанс… истек срок действия «.
Ответ №3:
Чтобы уничтожить один сеанс php, вы можете сделать session_destroy();
Комментарии:
1. Да, я это знаю, но как ее уничтожить, когда пользователь закрывает сайт? Если он закроет браузер или когда он закроет какую-либо вкладку в браузере? Возможно ли перехватить это событие?
2. Да, вы фиксируете событие OnClose() окна, а затем пытаетесь создать ajax-скрипт для php, который уничтожает sesion.