百見は、一聞にしかず

見てもわからない事は、とりあえず聞いてみよう。

対象の地点までスクロールする(アニメーションしない)

入力フォームからsubmitボタンをクリックし、エラーチェックを行うことがあります。

javascriptでチェックするのではなく、POSTしてその先でエラーチェックをする(PHPなどで)場合などです。

その場合、エラー箇所へスクロールさせますが、アニメーションを利用しないでパッと移動したい場合は、以下のようにして出来ました。

■scriptの部分

$(function() {
var errPos = $(‘#sample’).get(0).offsetTop;
$(‘html,body’).scrollTop(errPos);
});

■htmlの部分

<div id=”sample”>エラー箇所</div>

色々と省いていてザックリしていますが、、、

ちなみにアニメーションで移動させるには、bodyの部分を以下のようにします。

$(‘html,body’).animate({scrollTop: errPos}, ‘slow’);

ちなみに、$(‘body’)だけでは動かないことがあるみたいなので、$(‘html,body’)とするそうです。