text: /**
   * author Remy Sharp
   * url http://remysharp.com/2009/01/26/element-in-view-event-plugin/
   */
  (function ($) {
      function getViewportHeight() {
          var height = window.innerHeight; // Safari, Opera
          var mode = document.compatMode;
  
          if ( (mode || !$.support.boxModel) ) { // IE, Gecko
              height = (mode == 'CSS1Compat') ?
              document.documentElement.clientHeight : // Standards
              document.body.clientHeight; // Quirks
          }
  
          return height;
      }
  
      $(window).scroll(function () {
          var vpH = getViewportHeight(),
              scrolltop = (document.documentElement.scrollTop ?
                  document.documentElement.scrollTop :
                  document.body.scrollTop),
              elems = [];
          
          // naughty, but this is how it knows which elements to check for
          $.each($.cache, function () {
              if (this.events && this.events.inview) {
                  elems.push(this.handle.elem);
              }
          });
  
          if (elems.length) {
              $(elems).each(function () {
                  var $el = $(this),
                      top = $el.offset().top,
                      height = $el.height(),
                      inview = $el.data('inview') || false;
  
                  if (scrolltop > (top + height) || scrolltop + vpH < top) {
                      if (inview) {
                          $el.data('inview', false);
                          $el.trigger('inview', [ false ]);                        
                      }
                  } else if (scrolltop < (top + height)) {
                      if (!inview) {
                          $el.data('inview', true);
                          $el.trigger('inview', [ true ]);
                      }
                  }
              });
          }
      });
      
      // kick the event to pick up any elements already in view.
      // note however, this only works if the plugin is included after the elements are bound to 'inview'
      $(function () {
          $(window).scroll();
      });
  })(jQuery);