2014-03-24 2 views
0

У меня проблема с сайтом, который я делаю для своего друга.Возврат страницы вручную беспорядок вверх

В основном домашняя страница представляет собой div с изображением в нем и панель меню со ссылками в середине ее. С помощью jquery я предотвращаю действие по умолчанию щелчка по ссылке, после чего панель меню продвигается вверх, нажатие ссылки становится активным, и в то же время изображение исчезает. После этого вы перенаправляетесь на выбранную страницу. Это работает, это плавный переход, и вы даже не замечаете перехода на страницу. Проблема в том, что если вы перенаправлены на страницу и нажмите кнопку возврата к браузеру, вы вернетесь на домашнюю страницу, но изображение все равно исчезнет, ​​панель меню будет в верхней части, а в предыдущей ссылке будет по-прежнему класс " активный».

Так как это похоже на то, что вы возвращаетесь на домашнюю страницу, но в состоянии, когда страница уже выполнила jQuery. Я не хочу этого, он должен быть таким же, как если бы вы обновили страницу. Есть ли способ достичь этого?

Заранее спасибо

Edit: Код:

$(document).ready(function() { 
    $('.nav_item a').click(function(event) { 
     event.preventDefault(); 
    }); 

    $("#menu").on('click', '.nav_item', function(){ 
     $(this).toggleClass('nav_item_active'); 
     $("#menu").css('top','-10px'); 
     $("#menu").css('background','rgba(89, 89, 89, 0)'); 
     $("#background_image").css('opacity','0'); 
     var href = $(this).find('a').attr('href'); 

     setTimeout(function() { 
      window.location = href; 
     }, 1300); 
    }); 
}); 
+1

Нам нужно будет увидеть, как ваш код сможет вам помочь. Просто описания этого недостаточно. Кроме того, вы используете «history.pushState()» случайно? –

+0

Спасибо за комментарий, отредактировав сообщение с моим кодом сейчас –

ответ

0

Ничего, нашел ответ. Мне пришлось добавить onunload="" в тег тела.

<body onunload=""> 
Смежные вопросы