src/core/util/util.js
function (element) {
      var parent = element.parent();

      // jqLite might return a non-null, but still empty, parent; so check for parent and length
      while (hasComputedStyle(parent, 'pointer-events', 'none')) {
        parent = parent.parent();
      }

      return parent;
    }
function (element) {
      var parent = element.parent();

      // jqLite might return a non-null, but still empty, parent; so check for parent and length
      while (hasComputedStyle(parent, 'pointer-events', 'none')) {
        parent = parent.parent();
      }

      return parent;
    }
function ( element ) { var parent = element . parent ( ) ; // jqLite might return a non-null, but still empty, parent; so check for parent and length while ( hasComputedStyle ( parent , 'pointer-events' , 'none' ) ) { parent = parent . parent ( ) ; } return parent ; }
Scan up dom hierarchy for enabled parent;
Scan up dom hierarchy for enabled parent ;