MS Edge:IntersectionObserver。对你起作用吗?

时间:2017-07-13 21:05:33

标签: javascript microsoft-edge intersection-observer

在任何人在这里付出太多努力之前,我已经有了一个讨厌的解决方法。我只是想知道是否有人工作。

Edge的第15版现已发布,并支持交叉观察器(用于延迟加载)。

我已经实现了它并且在所有支持它的浏览器(Chrome和Opera.Firefox和Safari尚未实现)中工作正常但在Edge中根本没有。

没有抛出任何错误,但永远不会调用回调。

handleIntersectionElement(elm) {
  if (elm && this.state.enabled && !this.observer) {
    this.observer = new global.IntersectionObserver(this.intersectionCallback, this.options);
    this.observer.observe(elm);
  }
}

选项如下,没什么特别的:

options = { root: null, rootMargin: '100px', threshold: [0] };

这是React组件的一部分,但不知道为什么会产生影响。

1 个答案:

答案 0 :(得分:4)

IntersectionObserver无法观察Edge中宽度和高度均为0的空元素,因此您唯一需要做的就是在要观察的元素上设置1px边框或min-width: 1px; min-height: 1px;