(() => {
addEventListener('wheel', (e) => {
let el = e.target, sc = null;
while (el && el !== document.body) {
const s = getComputedStyle(el);
if (/(auto|scroll)/.test(s.overflowY) && el.scrollHeight > el.clientHeight + 1) { sc = el; break; }
el = el.parentElement;
}
const before = sc ? sc.scrollTop : null;
setTimeout(() => console.log(JSON.stringify({
prevented: e.defaultPrevented,
deltaY: e.deltaY, deltaMode: e.deltaMode,
target: (e.target.className || '').toString().slice(0, 60),
scroller: sc ? (sc.className || '').toString().slice(0, 60) : null,
size: sc ? [sc.clientHeight, sc.scrollHeight] : null,
scrolled: sc ? sc.scrollTop - before : null,
stack: document.elementsFromPoint(e.clientX, e.clientY).slice(0, 4)
.map(n => n.tagName + '.' + (n.className || '').toString().slice(0, 40)),
})), 300);
}, false);
console.log('готово — крути колесом над списком таблиц');
})();