diff options
| author | Alessandro Chitolina <[email protected]> | 2017-09-25 09:09:01 +0200 |
|---|---|---|
| committer | XhmikosR <[email protected]> | 2019-02-20 22:05:45 +0200 |
| commit | 0263d1742ce8ad25f0f2de30beebae69b2f55f10 (patch) | |
| tree | 4f3d1b376f0050c2a74addebd32341b45d0ec38a /js/src/dom/manipulator.js | |
| parent | 9744886519a834deba45b1cadbb0603ac2446102 (diff) | |
| download | bootstrap-0263d1742ce8ad25f0f2de30beebae69b2f55f10.tar.xz bootstrap-0263d1742ce8ad25f0f2de30beebae69b2f55f10.zip | |
rewritten scrollspy without jquery
Diffstat (limited to 'js/src/dom/manipulator.js')
| -rw-r--r-- | js/src/dom/manipulator.js | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/js/src/dom/manipulator.js b/js/src/dom/manipulator.js index 215837bf6..201902b77 100644 --- a/js/src/dom/manipulator.js +++ b/js/src/dom/manipulator.js @@ -40,6 +40,22 @@ const Manipulator = { element.removeAttribute(`data-${key.replace(/[A-Z]/g, (chr) => `-${chr.toLowerCase()}`)}`) }, + offset(element) { + const rect = element.getBoundingClientRect() + + return { + top: rect.top + document.body.scrollTop, + left: rect.left + document.body.scrollLeft + } + }, + + position(element) { + return { + top: element.offsetTop, + left: element.offsetLeft + } + }, + toggleClass(element, className) { if (typeof element === 'undefined' || element === null) { return |
