title: Is this JS code properly OOP?
body: <p>I'm trying to keep my JS code nice and OOP from now on. I think I've gotten the hang of it, could you check this code below and let me know if there are any glaring errors?</p>
  
  <pre><code>/*------- collapser -------*/
  function Collapse(){
      var $this = this;
      $(document).ready(function(e){
          $this.setEvents($this, e);
      });
  }
  Collapse.prototype.setEvents = function($this, e){    
      $('.collapse&gt;div').hide();
      $('.collapse&gt;h1').click(function(e){
          $this.show($this, e);
      });
  }
  Collapse.prototype.show = function($this, e){
      var element = e.originalEvent.srcElement.parentNode;
      $(element).children("div").slideToggle();
  }
  var collapse = new Collapse();
  </code></pre>
  
  <p>One question, is there a better way to get the class instance without passing $this down everytime? I'd love to hook events like this:</p>
  
  <pre><code>$(document).ready(setEvents);
  </code></pre>
  
  <p>And in the <code>setEvents</code> function, have <code>this</code> be an instance of the "collapser." Is there a way to do this?</p>
  
  <p>Thanks in advance!</p>