src/mdlComponentHandler.js
function upgradeElementsInternal(elements) {
    if (!Array.isArray(elements)) {
      if (elements instanceof Element) {
        elements = [elements];
      } else {
        elements = Array.prototype.slice.call(elements);
      }
    }
    for (var i = 0, n = elements.length, element; i < n; i++) {
      element = elements[i];
      if (element instanceof HTMLElement) {
        upgradeElementInternal(element);
        if (element.children.length > 0) {
          upgradeElementsInternal(element.children);
        }
      }
    }
  }
function upgradeElementsInternal(elements) {
    if (!Array.isArray(elements)) {
      if (elements instanceof Element) {
        elements = [elements];
      } else {
        elements = Array.prototype.slice.call(elements);
      }
    }
    for (var i = 0, n = elements.length, element; i < n; i++) {
      element = elements[i];
      if (element instanceof HTMLElement) {
        upgradeElementInternal(element);
        if (element.children.length > 0) {
          upgradeElementsInternal(element.children);
        }
      }
    }
  }
function upgradeElementsInternal ( elements ) { if ( ! Array . isArray ( elements ) ) { if ( elements instanceof Element ) { elements = [ elements ] ; } else { elements = Array . prototype . slice . call ( elements ) ; } } for ( var i = 0 , n = elements . length , element ; i < n ; i ++ ) { element = elements [ i ] ; if ( element instanceof HTMLElement ) { upgradeElementInternal ( element ) ; if ( element . children . length > 0 ) { upgradeElementsInternal ( element . children ) ; } } } }
Upgrades a specific list of elements rather than all in the DOM.

@param {!Element|!Array<!Element>|!NodeList|!HTMLCollection} elements
The elements we wish to upgrade.
Upgrades a specific list of elements rather than all in the DOM .