我一直在查看 IntersectionObserver 来检测 en 元素何时对用户可见,方法是检查它是否在视口内。但是,如果另一个元素覆盖了“目标”元素,似乎只有在我们知道要具体观察哪些元素的情况下才能检测到这一点,因为观察者总是需要一个目标和一个根来进行比较:
function createObserver() {
var options = {
root: document.querySelector('#container'),
threshold: 0
};
var observer = new IntersectionObserver(callback, options);
observer.observe(document.querySelector('#box'));
}
我需要做的是指定一个要观察的目标,然后检测任何其他元素何时覆盖它,这似乎使用 IntersectionObserver 是不可能的。感谢任何能提供帮助的人!