gmail の scroll 量を制御

google reader の scroll 制御で使ったもの(http://d.hatena.ne.jp/spider-man/20080826/p1)を使い回して gmail 版も作ってみた。

// ==UserScript==
// @name           gmail scroll controll
// @namespace      gmail_scroll_controll@basyura.org
// @include        https://mail.google.com/*
// @include        http://mail.google.com/*
// ==/UserScript==
(function () {
 var SCROLL_HEIGHT = 150;
 window.addEventListener('keypress',
   function(e) {
     if (e.charCode == 32) {
       var h = SCROLL_HEIGHT;
       if(e.shiftKey) {
         h = h * -1;
       }
       document.documentElement.scrollTop += h;
       e.preventDefault();
       e.stopPropagation();
     }
   }, true);
})();

最初は

document.body.scrollTop += h;

としてたんだけど、常に 0 が返ってきてはまった。DOCTYPE の記述によって取れるところが変わるらしい。