「このページのトップへ」をJavaScriptで

画面のトップへ戻る時、いきなりではなく、アニメーションでわかりやすく戻ります。


backToTop.js

function backToTop() {
  var x1 = x2 = x3 = 0;
  var y1 = y2 = y3 = 0;
  if (document.documentElement) {
      x1 = document.documentElement.scrollLeft || 0;
      y1 = document.documentElement.scrollTop || 0;
  }
  if (document.body) {
      x2 = document.body.scrollLeft || 0;
      y2 = document.body.scrollTop || 0;
  }
  x3 = window.scrollX || 0;
  y3 = window.scrollY || 0;
  var x = Math.max(x1, Math.max(x2, x3));
  var y = Math.max(y1, Math.max(y2, y3));
  window.scrollTo(Math.floor(x / 2), Math.floor(y / 2));
  if (x > 0 || y > 0) {
      window.setTimeout("backToTop()", 25);
  }
}

(X)HTML

<head>
...
<script type="text/javascript" src="backToTop.js"></script>
...
</head>
<a href="#" onclick="backToTop(); return false" title="このページのトップへ">▲</a>


ネタ元