Загрузите заставку только один раз при запуске в php

1

Я уже создал заставку, используя опцию jquery fadeOut. Он работает нормально, но проблема заключается в том, что экран загружается каждый раз, когда я нажимаю, чтобы перейти к следующей странице. Мне нужен экран заставки только при запуске. Я думаю, мне нужно использовать сеанс или что-то еще, но я не могу найти решение. Я использую следующий скрипт.

 $(document).ready(function () {
 $("#splashscreen").click(function () {
    $("#splashscreen").fadeOut(2000); 
 });
 });
Теги:
codeigniter
splash-screen

4 ответа

5
Лучший ответ

Это должно работать:

$(document).ready(function () {
    if( $.cookie('splashscreen') == null ) { // Here you are checking if cookie is existing if not you are showing a splash screen and set a cookie
        $("#splashscreen").fadeIn();
        $.cookie("splashscreen", 1, { expires : 10 }); // cookie is valid for 10 days
    }
    $("#splashscreen").click(function () {
        $("#splashscreen").fadeOut(2000); 
    });
});
  • 0
    Большое спасибо. Я добавил css display none свойство в другом месте и, кажется, работает.
0

Да, для этого вы можете использовать сеанс. в первой строке вашего кода добавьте <?php session_start();

Теперь, в вашем коде, вы можете сделать следующее:

if(!$_SESSION['splash'])
{
    $_SESSION['splash'] = true;

    //echo your splash code here
}
0

Один из вариантов заключается в том, чтобы обрабатывать это в PHP, но вы также можете использовать локальное хранилище в JS. Вот связанная тема: Как установить переменную session в jquery?

0

Вы можете установить cookie и проверить его, когда страница обновится. Я предлагаю вам использовать библиотеку следующим образом:

https://github.com/js-cookie/js-cookie

Ещё вопросы

Сообщество Overcoder
Наверх
Меню