|
|
@@ -7,9 +7,17 @@ export default function syncronizeElementsScrolling(
|
|
|
let activeScroller: HTMLElement | null = null;
|
|
|
const bSyncroV = direction.indexOf("v") > -1;
|
|
|
const bSyncroH = direction.indexOf("h") > -1;
|
|
|
+ const setActive = function (e: MouseEvent) {
|
|
|
+ activeScroller = e.target as HTMLElement;
|
|
|
+ };
|
|
|
const applyListener = function (element: HTMLBaseElement) {
|
|
|
- element.addEventListener("mouseenter", function (e: MouseEvent) {
|
|
|
- activeScroller = e.target as HTMLElement;
|
|
|
+ element.addEventListener("mouseenter", setActive);
|
|
|
+
|
|
|
+ element.addEventListener("mousedown", () => {
|
|
|
+ elements.forEach((e) => e.removeEventListener("mouseenter", setActive));
|
|
|
+ window.addEventListener("mouseup", () =>
|
|
|
+ elements.forEach((e) => e.addEventListener("mouseenter", setActive))
|
|
|
+ );
|
|
|
});
|
|
|
element.addEventListener("scroll", function (e: Event) {
|
|
|
if (e.target !== activeScroller) return;
|