code: function _findVcards(content) {
      var vcardChildDepth = 0, fields;
      var vcards = [], vcard;
      var parser = Sax.parser();
      parser.onopentag = function(node) {
  	if (node.attributes['class'] &&
  	    node.attributes['class'].search(/(^|\s)vcard(\s|$)/i)>=0) {
  
  	    vcardChildDepth = 1;
  	    vcards.push(vcard = {});
  	} else if (vcardChildDepth > 0) {
  	    vcardChildDepth++;
  	}
  
  	if (vcardChildDepth > 0) {
  	    fields = node.attributes['class'] &&
  		node.attributes['class'].split(/\s/).filter(function(field) {
  		    return elements.indexOf(field);
  		}) ||
  		[];
  	}
      };
      parser.ontext = function(s) {
  	if (vcardChildDepth > 0) {
  	    fields.forEach(function(field) {
  		vcard[field] = s.trim();
  	    });
  	}
      };
      parser.onclosetag = function() {
  	if (vcardChildDepth > 0)
  	    vcardChildDepth--;
      };
  
      parser.write(content).close();
      return vcards;
  }
docs: /// Private functions