code: function(nodes, options) {
          this.nodes = $(nodes);
          options = this.setOptions(options);
          this.createWrapper();
  
          // Remove title attributes
          if (options.getTitle === 'title') {
              options.getTitle = 'data-' + this.keyName + '-title';
  
              this.nodes.each(function(i, node) {
                  $(node).attr(options.getTitle, $(node).attr('title')).removeAttr('title');
              });
          }
  
          // Initialize events
          this.addEvents([
              ['{mode}', 'document', 'onShowToggle', '{selector}'],
              ['resize', 'window', $.debounce(this.onHide.bind(this))]
          ]);
  
          if (options.mode === 'click') {
              this.addEvent('clickout', 'document', 'hide');
          } else {
              this.addEvent('mouseleave', 'document', 'hide', '{selector}');
          }
  
          this.initialize();
      }
docs: Initialize the tooltip.
  
  @param {jQuery} nodes
  @param {Object} [options]