Open haizhilin2013 opened 3 years ago
// 判断元素是否在视口中
function isEleVisible(ele){
var {top, right, bottom, left} = ele.getBoundingClientRect()
var w = window.innerWidth
var h = window.innerHeight
if(bottom < 0 || top > h){
// y 轴方向
return false
}
if(right < 0 || left > w){
// x 轴方向
return false
}
return true
}
使用 IntersectionObserver 实现,性能更好 IntersectionObserver
// 默认以 viewport 为观察容器
var intersectionObserver = new IntersectionObserver(function(entries) {
// todo 如懒加载等
});
// start observing
intersectionObserver.observe(document.querySelector('#loadVideo'));
// 合适的时机停止监听
intersectionObserver.unobserve(document.querySelector('#loadVideo'))
第645天 写一个JS方法,判断元素是否在可视区域
3+1官网
我也要出题