質問
私は、フォームを送信した後、
位置は、ウィンドウの一番上に戻ります。代わりに前の位置に行くの。
位置決幅をrememeberするscrollTopスプライトを使用して見てみるか、より良いアイデアを持っていますか?
私はPHP5、jQueryとMySQLのようなものを使用しています。
解決 2
これをチェックしてください:
<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>
他のヒント
まず、あなたは、彼らがフォームを送信する際に訪問者がに取得したいページ内のアンカーを作成します。
次に、フォームのアクションやアンカーのファイルにポイントをリダイレクト
例えばます。
<div id="view_from_here" >.....
そして
<form action="myfile.php#view_from_here" ....
あなたが提出する場合は、
あなたはそれが(あなたがとにかく同じページにリダイレクト場合、多分それは、オプションです)何も変わりませんAjaxを経て形成されます。あなたはまた、提出する前に、JavaScriptでクッキー内の位置を保存し、取得し、新しいページがロードされたときに値を設定することができます(たとえば、jQueryのscrollTo付き)。それとも、ただ(ユーザーがスクロール最後の位置である可能性が非常に高いです)、あなたのフォームフィールドの上にアンカーを設定し、フォームに戻ってスクロールした後に提出します。
所属していません StackOverflow