From 2b6970d33afd75be5bfef951dc3691d492004d43 Mon Sep 17 00:00:00 2001 From: George Halkiadakis Date: Tue, 18 Apr 2023 01:11:37 +0300 Subject: admin back-office environment (skeleton); admin categories --- .../js/_dependency-control/plugins/intersecting.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 public/assets/js/_dependency-control/plugins/intersecting.js (limited to 'public/assets/js/_dependency-control/plugins/intersecting.js') diff --git a/public/assets/js/_dependency-control/plugins/intersecting.js b/public/assets/js/_dependency-control/plugins/intersecting.js new file mode 100644 index 0000000..87faf61 --- /dev/null +++ b/public/assets/js/_dependency-control/plugins/intersecting.js @@ -0,0 +1,18 @@ +$$plugins.define('intersecting', function (element, options) { + const el = document.querySelector(options.target); + + const observer = new window.IntersectionObserver(([entry]) => { + const intersectionRatio = entry.intersectionRatio.toFixed(2); + if (entry.isIntersecting) { + element.classList.add("sticky"); + } else { + element.classList.remove("sticky"); + } + }, { + root: null, + rootMargin: '-30% 0px -70%', + threshold: 0 + }) + + observer.observe(el) +}); -- cgit v1.2.3