/**
 * ldesign v0.2.2
 * (c) 2022年9月20日 swimly
 * @license MIT
 */

/**
 * LDesignUtility v0.1.1
 * (c) 2022 undefined
 * @license MIT
 */
function observe(element, root, callback, marginBottom) {
  if (!window || !window.IntersectionObserver) {
    callback();
    return null;
  }

  var io = null;

  try {
    io = new window.IntersectionObserver(function (entries) {
      var entry = entries[0];

      if (entry.isIntersecting) {
        callback();
        io.unobserve(element);
      }
    }, {
      rootMargin: "0px 0px ".concat(marginBottom, "px 0px"),
      root: root
    });
    io.observe(element);
  } catch (e) {
    console.error(e);
    callback();
  }

  return io;
}

export { observe as o };
//# sourceMappingURL=observe.js.map
