mirror of
https://github.com/Leaflet/Leaflet.git
synced 2025-08-16 16:45:22 +00:00
remove DomUtil.getViewportOffset as unnecessary
This commit is contained in:
@ -53,29 +53,6 @@ describe('DomUtil', function () {
|
||||
});
|
||||
});
|
||||
|
||||
describe('#getViewportOffset', function () {
|
||||
it('calculates the viewport offset of an element', function () {
|
||||
var div = document.createElement('div');
|
||||
div.style.position = 'absolute';
|
||||
div.style.top = '100px';
|
||||
div.style.left = '200px';
|
||||
div.style.border = '10px solid black';
|
||||
div.style.padding = '50px';
|
||||
div.style.visibility = 'hidden';
|
||||
|
||||
var div2 = document.createElement('div');
|
||||
div.style.marginTop = '100px';
|
||||
|
||||
div.appendChild(div2);
|
||||
|
||||
document.body.appendChild(div);
|
||||
|
||||
expect(L.DomUtil.getViewportOffset(div2)).to.eql(new L.Point(260, 260));
|
||||
|
||||
document.body.removeChild(div);
|
||||
});
|
||||
});
|
||||
|
||||
// describe('#setPosition', noSpecs);
|
||||
|
||||
// describe('#getStyle', noSpecs);
|
||||
|
@ -19,66 +19,6 @@ L.DomUtil = {
|
||||
return value === 'auto' ? null : value;
|
||||
},
|
||||
|
||||
getViewportOffset: function (element) {
|
||||
|
||||
var top = 0,
|
||||
left = 0,
|
||||
el = element,
|
||||
docBody = document.body,
|
||||
docEl = document.documentElement,
|
||||
pos;
|
||||
|
||||
do {
|
||||
top += el.offsetTop || 0;
|
||||
left += el.offsetLeft || 0;
|
||||
|
||||
//add borders
|
||||
top += parseInt(L.DomUtil.getStyle(el, 'borderTopWidth'), 10) || 0;
|
||||
left += parseInt(L.DomUtil.getStyle(el, 'borderLeftWidth'), 10) || 0;
|
||||
|
||||
pos = L.DomUtil.getStyle(el, 'position');
|
||||
|
||||
if (el.offsetParent === docBody && pos === 'absolute') { break; }
|
||||
|
||||
if (pos === 'fixed') {
|
||||
top += docBody.scrollTop || docEl.scrollTop || 0;
|
||||
left += docBody.scrollLeft || docEl.scrollLeft || 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (pos === 'relative' && !el.offsetLeft) {
|
||||
var width = L.DomUtil.getStyle(el, 'width'),
|
||||
maxWidth = L.DomUtil.getStyle(el, 'max-width'),
|
||||
r = el.getBoundingClientRect();
|
||||
|
||||
if (width !== 'none' || maxWidth !== 'none') {
|
||||
left += r.left + el.clientLeft;
|
||||
}
|
||||
|
||||
//calculate full y offset since we're breaking out of the loop
|
||||
top += r.top + (docBody.scrollTop || docEl.scrollTop || 0);
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
el = el.offsetParent;
|
||||
|
||||
} while (el);
|
||||
|
||||
el = element;
|
||||
|
||||
do {
|
||||
if (el === docBody) { break; }
|
||||
|
||||
top -= el.scrollTop || 0;
|
||||
left -= el.scrollLeft || 0;
|
||||
|
||||
el = el.parentNode;
|
||||
} while (el);
|
||||
|
||||
return new L.Point(left, top);
|
||||
},
|
||||
|
||||
documentIsLtr: function () {
|
||||
L.DomUtil._docIsLtr = L.DomUtil._docIsLtr || L.DomUtil.getStyle(document.body, 'direction') === 'ltr';
|
||||
return L.DomUtil._docIsLtr;
|
||||
|
Reference in New Issue
Block a user