🐣
Intersection Observerのメモ
作成日:
2021/12/02
2
監視するターゲットがルートの境界線と交差する度にコールバックが呼び出される。
root
'null': ブラウザのビューポート
要素を指定: その要素内でターゲットが見えるか見えないかを確認できる
rootMargin
ルート範囲のサイズを拡大・縮小させる量。デフォルトは0。
"10px 20px 30px 40px"や"-50% 0"など、CSSと同じように指定できる。
threshold
'1': 全て見えた状態で通知。
'0': 1pxでも見えたら通知。
コールバックで受け取れるもの
- 入力引数として交差したすべての閾値を示す IntersectionObserverEntry オブジェクトの配列
- 参照として IntersectionObserver オブジェクト自身
intersectionCallback(entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
// do something
}
});
}
ターゲットがルートより上か下か(スクロール前か後か)を知るには、下のように判定すればOK
const isAbove = e.boundingClientRect.y <= e.rootBounds.y;
IE11のpolyfill
https://polyfill.io/v3/polyfill.min.js?features=IntersectionObserver
今日の作業内容のgit
制作会社でフロントのコーディングやWordpressのテーマ開発をしてます。
本命はJavascriptです😋
目指せフロントエンドエンジニア👊