code: function(parentNode) {
  
  			var elements = [],
  				appConfigs = [],
  				add = function(e) {
  					if (!e) { return; }
  					elements.push(e);
  				},
  				addAll = function(els) {
  					if (!els) { return; }
  					for (var i = 0, len = els.length; i < len; i++) {
  						add(els[i]);
  					}
  				};
  
  			if (!!parentNode && !F2.isNativeDOMNode(parentNode)) {
  				throw ('"parentNode" must be null or a DOM node');
  			}
  
  			// if the passed in element has a data-f2-appid attribute add
  			// it to the list of elements but to not search within that
  			// element for other placeholders
  			if (parentNode && parentNode.hasAttribute('data-f2-appid')) {
  				add(parentNode);
  			} else {
  
  				// find placeholders within the parentNode only if 
  				// querySelectorAll exists
  				parentNode = parentNode || document;
  				if (parentNode.querySelectorAll) {
  					addAll(parentNode.querySelectorAll('[data-f2-appid]'));
  				}
  			}
  
  			for (var i = 0, len = elements.length; i < len; i++) {
  				var appConfig = _getAppConfigFromElement(elements[i]);
  				appConfigs.push(appConfig);
  			}
  
  			if (appConfigs.length) {
  				F2.registerApps(appConfigs);
  			}
  		}
docs: Automatically load apps that are already defined in the DOM. Elements will
  be rendered into the location of the placeholder DOM element. Any AppHandlers
  that are defined will be bypassed.
  @method loadPlaceholders
  @param {Element} parentNode The element to search for placeholder apps