// fix.js: make CSS 'position: fixed' work in IE5+/Win
// posted to Webdesign-L by Andrew Clover on 11 Dec 2001

fix_elements= new Array();

function fix_event() {
  var i;
  for (i= 0; i<fix_elements.length; i++) {
    fix_elements[i].style.left=
      parseInt(fix_elements[i].fix_left)+
      document.getElementsByTagName('html')[0].scrollLeft+
      document.getElementsByTagName('body')[0].scrollLeft+'px';
    fix_elements[i].style.top=
      parseInt(fix_elements[i].fix_top)+
      document.getElementsByTagName('html')[0].scrollTop+
      document.getElementsByTagName('body')[0].scrollTop+'px';
  }
}

function fix_bind() {
  var i;
  for (i= 0; i<document.all.length; i++) {
    if (document.all[i].currentStyle.position=='fixed') {
      document.all[i].fix_left= document.all[i].currentStyle.left;
      document.all[i].fix_top= document.all[i].currentStyle.top;
      document.all[i].style.position= 'absolute';
      fix_elements[fix_elements.length]= document.all[i];
      window.attachEvent('onscroll', fix_event);
      window.attachEvent('onresize', fix_event);
    }
  }
}

if (window.attachEvent) // IE5+ non-Mac
  window.attachEvent('onload', fix_bind);