@qn-pandora/pandora-visualization
Version:
Pandora 通用可视化库
25 lines (24 loc) • 779 B
JavaScript
;
var eventProto = Event.prototype;
eventProto.propagationPath = function propagationPath() {
var _this = this;
function getParent(element) {
// SVGElement.parentElement is undefined in ie11
return element.parentElement === undefined
? element.parentNode
: element.parentElement;
}
var polyfill = function () {
var element = _this.target || null;
var pathArr = [element];
if (!element || !getParent(element)) {
return [];
}
while (getParent(element)) {
element = getParent(element);
pathArr.unshift(element);
}
return pathArr;
};
return this.path || (this.composedPath && this.composedPath()) || polyfill();
};