function jscoverage_getViewportHeight() {
//#JSCOVERAGE_IF /MSIE/.test(navigator.userAgent)
  if (self.innerHeight) {
    // all except Explorer
    return self.innerHeight;
  }
  else if (document.documentElement && document.documentElement.clientHeight) {
    // Explorer 6 Strict Mode
    return document.documentElement.clientHeight;
  }
  else if (document.body) {
    // other Explorers
    return document.body.clientHeight;
  }
  else {
    throw "Couldn't calculate viewport height";
  }
//#JSCOVERAGE_ENDIF
}
function jscoverage_getViewportHeight() {

  if (self.innerHeight) {
    
    return self.innerHeight;
  }
  else if (document.documentElement && document.documentElement.clientHeight) {
    
    return document.documentElement.clientHeight;
  }
  else if (document.body) {
    
    return document.body.clientHeight;
  }
  else {
    throw "Couldn't calculate viewport height";
  }

}
function jscoverage_getViewportHeight ( ) { //#JSCOVERAGE_IF /MSIE/.test(navigator.userAgent)
 if ( self . innerHeight ) { // all except Explorer
 return self . innerHeight ; } else if ( document . documentElement && document . documentElement . clientHeight ) { // Explorer 6 Strict Mode
 return document . documentElement . clientHeight ; } else if ( document . body ) { // other Explorers
 return document . body . clientHeight ; } else { throw "Couldn't calculate viewport height" ; } //#JSCOVERAGE_ENDIF
 }
http://www.quirksmode.org/viewport/compatibility.html
http : // www . quirksmode . org / viewport / compatibility . html