src/sticky.js
function getRect(el) {
  if (el && typeof(el.getBoundingClientRect) === 'function') {
    return el.getBoundingClientRect();
  }

  if (el === window || el === document) {
    return {top: 0, left: 0, bottom: window.innerHeight, height: window.innerHeight, width: window.innerWidth, right: window.innerWidth};
  }

  return {top: 0, left: 0, right: 0, bottom: 0, width: 0, height: 0};
}
function getRect(el) {
  if (el && typeof(el.getBoundingClientRect) === 'function') {
    return el.getBoundingClientRect();
  }

  if (el === window || el === document) {
    return {top: 0, left: 0, bottom: window.innerHeight, height: window.innerHeight, width: window.innerWidth, right: window.innerWidth};
  }

  return {top: 0, left: 0, right: 0, bottom: 0, width: 0, height: 0};
}
some helpers