mirror of
https://github.com/gorhill/uBlock.git
synced 2024-11-10 09:07:54 +01:00
DOM Inspector: Fallback to .childNodes when .children not present (#2242)
When the browser does not support .children on the svgRoot element (MS Edge, for example), filter childNodes for elements and use that list instead.
This commit is contained in:
parent
798e21de36
commit
a121f2261d
1 changed files with 13 additions and 1 deletions
|
@ -810,6 +810,17 @@ var elementsFromSpecialSelector = function(selector) {
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
|
|
||||||
|
var getSvgRootChildren = function() {
|
||||||
|
if ( svgRoot.children ) {
|
||||||
|
return svgRoot.children;
|
||||||
|
} else {
|
||||||
|
var childNodes = Array.prototype.slice.apply(svgRoot.childNodes);
|
||||||
|
return childNodes.filter(function(node) {
|
||||||
|
return node.nodeType === Node.ELEMENT_NODE;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
var highlightElements = function(scrollTo) {
|
var highlightElements = function(scrollTo) {
|
||||||
var wv = pickerRoot.contentWindow.innerWidth;
|
var wv = pickerRoot.contentWindow.innerWidth;
|
||||||
var hv = pickerRoot.contentWindow.innerHeight;
|
var hv = pickerRoot.contentWindow.innerHeight;
|
||||||
|
@ -818,6 +829,7 @@ var highlightElements = function(scrollTo) {
|
||||||
var xl, xr, yt, yb, w, h, ws;
|
var xl, xr, yt, yb, w, h, ws;
|
||||||
var xlu = Number.MAX_VALUE, xru = 0, ytu = Number.MAX_VALUE, ybu = 0;
|
var xlu = Number.MAX_VALUE, xru = 0, ytu = Number.MAX_VALUE, ybu = 0;
|
||||||
var lists = highlightedElementLists;
|
var lists = highlightedElementLists;
|
||||||
|
var svgRootChildren = getSvgRootChildren();
|
||||||
|
|
||||||
for ( var i = 0; i < lists.length; i++ ) {
|
for ( var i = 0; i < lists.length; i++ ) {
|
||||||
elems = lists[i];
|
elems = lists[i];
|
||||||
|
@ -857,7 +869,7 @@ var highlightElements = function(scrollTo) {
|
||||||
if ( yt < ytu ) { ytu = yt; }
|
if ( yt < ytu ) { ytu = yt; }
|
||||||
if ( yb > ybu ) { ybu = yb; }
|
if ( yb > ybu ) { ybu = yb; }
|
||||||
}
|
}
|
||||||
svgRoot.children[i+1].setAttribute('d', islands.join('') || 'M0 0');
|
svgRootChildren[i+1].setAttribute('d', islands.join('') || 'M0 0');
|
||||||
}
|
}
|
||||||
|
|
||||||
svgRoot.firstElementChild.setAttribute('d', ocean.join(''));
|
svgRoot.firstElementChild.setAttribute('d', ocean.join(''));
|
||||||
|
|
Loading…
Reference in a new issue