JavaScript

JavaScriptでリロードしたときにスクロール位置をリセットしたい

ボタンを押したら同じURLを再表示するという処理を書こうとして

$btn.on('click', function() {
  location.reload();
});

としていたら、同じURLを再表示は出来るのですが、ボタンを押す前に画面をスクロールしていると再表示後もスクロールした状態になってしまいました。
ブラウザリロードしているので当たり前ですが、仕様として不都合だったのでリロードではなくリダイレクトさせるためにlocation.hrefを使います。

$btn.on('click', function() {
  location.href = location.href;
});

一見すると何やってるのかよく分からないコードになってしまいましたが、これで同じURLにリダイレクトさせてスクロール状態などはリセットされるようになりました。