blob: eb6122be7462b7e4f52d1adc5698d510b1ac0a1a [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// TODO(szager): add link to final spec.
callback IntersectionObserverCallback = void (sequence<IntersectionObserverEntry> entries, IntersectionObserver observer);
// TODO(szager): Update the doc link when the spec has an official home.
// https://github.com/slightlyoff/IntersectionObserver
[
CustomConstructor(IntersectionObserverCallback callback, IntersectionObserverInit options),
Custom=VisitDOMWrapper,
GarbageCollected,
RuntimeEnabled=IntersectionObserver,
] interface IntersectionObserver {
[RaisesException] void observe(Element target);
[RaisesException] void unobserve(Element target);
void disconnect();
sequence<IntersectionObserverEntry> takeRecords();
readonly attribute Element? root;
readonly attribute DOMString rootMargin;
readonly attribute double[] thresholds;
};