function findParents(el) {
  var endEl = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
  var haveEl = arguments[2];
  var haveEndEl = arguments[3];

  var retEls = [];
  if (haveEl) {
    retEls.push(el);
  }
  while (el && el.parentNode !== endEl) {
    el = el.parentNode;
    el && retEls.push(el);
  }
  if (haveEndEl) {
    retEls.push(endEl);
  }
  return retEls;
}
function findParents(el) {
  var endEl = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
  var haveEl = arguments[2];
  var haveEndEl = arguments[3];

  var retEls = [];
  if (haveEl) {
    retEls.push(el);
  }
  while (el && el.parentNode !== endEl) {
    el = el.parentNode;
    el && retEls.push(el);
  }
  if (haveEndEl) {
    retEls.push(endEl);
  }
  return retEls;
}
function findParents ( el ) { var endEl = arguments . length > 1 && arguments [ 1 ] !== undefined ? arguments [ 1 ] : null ; var haveEl = arguments [ 2 ] ; var haveEndEl = arguments [ 3 ] ; var retEls = [ ] ; if ( haveEl ) { retEls . push ( el ) ; } while ( el && el . parentNode !== endEl ) { el = el . parentNode ; el && retEls . push ( el ) ; } if ( haveEndEl ) { retEls . push ( endEl ) ; } return retEls ; }
查找元素的父节点们
@param {HTMLElement} el 目标元素
@param {HTMLElement} endEl 最大父容器（不指定则找到html）
@param {Boolean} haveEl 包含当前元素
@param {Boolean} haveEndEl 包含设定的最大父容器
查找元素的父节点们