2009-07-06 5 views
2

После того, как я отправлю форму, позиция вернется в верхнюю часть окна. Вместо перехода на предыдущую позицию.задняя кнопка позиция прокрутки

Глядя на использование scrolltop для запоминания позитива или у вас есть идея лучше?

Я использую такие вещи, как PHP5, jQuery и MySQL.

+0

Что форма выглядеть и как вы представляете это? Вы ссылаетесь на фрагмент или такой? – Gumbo

ответ

1

Проверьте это:

<script type="text/javascript" src="der/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="der/jquery.cookie.js"></script> 
<script type="text/javascript"> 
function get_position(){ 
    var top_position = document.documentElement.scrollTop; 
    $.cookie('pos', top_position); 
}; 
function set_position(){ 
    var top_position = $.cookie('pos'); 
    window.scrollTo(0,top_position) 
    $.cookie('pos', null); 
}; 
</script> 
</head> 
<body onload="set_position();"> 
. 
. 
. 
<form method="post" action="" onsubmit="return get_position();"> 
</form> 
0

Если вы отправляете форму через Ajax, это ничего не изменит (возможно, это вариант, если вы все равно перенаправляетесь на одну страницу). Вы также можете сохранить позицию в Cookie через JavaScript перед отправкой и извлечением и установить значение при загрузке новой страницы (например, с помощью jQuery scrollTo). Или вы просто установите привязку в поле «Форма» (которое, скорее всего, будет последней позицией пользователя, прокручиваемой) и прокрутите страницу назад до формы после отправки.

1

Сначала создайте якорь на своей странице, где вы хотите, чтобы посетитель добрался до отправки формы.

Затем в форме действия или перенаправить точку в файл с якорем

например

<div id="view_from_here" >..... 

затем

<form action="myfile.php#view_from_here" .... 
Смежные вопросы