观察HTMLElement的offsetParent

问题描述 投票:0回答:1

我试图观察 div 的“offsetParent”属性的变化,但我似乎无法让它工作。

基本上我的目标是在 offsetParent 不为空之后执行一个函数。

this.element.callFunctionWhenOffsetParentChanges( _ => {
    if(this.element.offsetParent){
        this.doSomething();
    }
});

我尝试使用这样的 MutationObserver:

const observer = MutationObserver( _ => {
    if(this.element.offsetParent){
         this.doSomething();
    }
});
observer.observe(this.element, {attributeFilter: ['offsetParent']})

但是当 offsetParent 被设置时(例如,当元素真正可见时),它不会触发。

如果有必要,我可以发布更多代码,但也许我只是在 MutationObserver 中遗漏了一些东西,或者还有另一种方法来对设置的 offsetParent 做出反应。

预先感谢您的帮助!

javascript html callback
1个回答
0
投票

也许你应该使用 IntersectionObserver 而不是 MutationObserver

© www.soinside.com 2019 - 2024. All rights reserved.