diff --git a/misc/tableheader.js b/misc/tableheader.js
index 9deb18d..41bc542 100644
--- a/misc/tableheader.js
+++ b/misc/tableheader.js
@@ -43,9 +43,10 @@ Drupal.behaviors.tableHeader = function (context) {
     var viewHeight = document.documentElement.scrollHeight || document.body.scrollHeight;
     if (e.viewHeight != viewHeight) {
       e.viewHeight = viewHeight;
-      e.vPosition = $(e.table).offset().top - 4;
-      e.hPosition = $(e.table).offset().left;
-      e.vLength = e.table.clientHeight - 100;
+      e.vPosition = $(e.table.tHead).offset().top;
+      var tHeadRelativeTop = e.vPosition - $(e.table).offset().top;
+      e.hPosition = $(e.table.tHead).offset().left;
+      e.vLength = e.table.clientHeight - tHeadRelativeTop - 100;
       // Resize header and its cell widths.
       var parentCell = $('th', e.table);
       $('th', e).each(function(index) {
