function inViewport(selector) { const offset = 10; // controll const element = selector.getBoundingClientRect(); const elementTop = Math.round(element.top) + offset; const elementBottom = Math.round(element.bottom); return elementTop <= window.innerHeight && elementBottom >= 0 } const ele = doucument.querySelector('.div'); console.log(inViewport(ele)) // result: true (is visiable)