jQuery: исчезновение на веб-странице только один раз - PullRequest
3 голосов
/ 09 августа 2010

У меня есть простой скрипт для перехода на домашнюю страницу сайта, что-то вроде:

jQuery(document).ready(function(){    
  $('body.home').hide();
  $('body.home').fadeIn('slow');
});

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

Есть ли способ сделать это только с помощью кода jQuery, возможно, каким-то образом выполнить функцию только один раз, а затем остановить ее выполнение? Будем очень благодарны за любые советы и фрагменты кода!

Ответы [ 3 ]

8 голосов
/ 09 августа 2010

Вы можете установить cookie.

$(function () {
  if ($.cookie("loaded") != "true") {
      $('body.home').hide().fadeIn('slow');
      $.cookie("loaded", "true");
  }
});
1 голос
/ 09 августа 2010

Вы можете погрузиться в мир php и проверить, существует ли сессия, если она не существует ... исчезнуть. Я мог бы опубликовать некоторый код, если вы хотите пойти по этому маршруту

Краткое чтение, если вы новичок в php и сессиях: http://www.tizag.com/phpT/phpsessions.php

0 голосов
/ 09 августа 2010

Если вы загружаете «другие части» своего сайта только с помощью вызовов AJAX, вы можете сохранить значение в глобальном пространстве имен javascript, которое просто указывает, что вы уже выполнили это действие.

В противном случае вы выполняете полное обновление страницы (перенаправление на другой сайт), и не существует чистого решения javascript. В этом случае вам нужно сохранить cookie, использовать local storage или запустить серверный скрипт.

...