Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

IntersectionObserver

IntersectionObserver 对象,用于推断某些节点是否可以被用户看见、有多大比例可以被用户看见。

方法

IntersectionObserver IntersectionObserver.relativeTo(String selector, Object margins)

使用选择器指定一个节点,作为参照区域之一。

参数
参数类型默认值必填说明
selectorString是选择器
marginsObject是用来扩展(或收缩)参照节点布局区域的边界

margins

属性类型默认值必填说明
leftNumber否节点布局区域的左边界
rightNumber否节点布局区域的右边界
topNumber否节点布局区域的上边界
bottomNumber否节点布局区域的下边界

IntersectionObserver IntersectionObserver.relativeToViewport(Object margins)

指定页面显示区域作为参照区域之一

参数
参数类型默认值必填说明
marginsObject是用来扩展(或收缩)参照节点布局区域的边界

margins

属性类型默认值必填说明
leftNumber否节点布局区域的左边界
rightNumber否节点布局区域的右边界
topNumber否节点布局区域的上边界
bottomNumber否节点布局区域的下边界

IntersectionObserver.observe(String targetSelector, Function callback)

指定目标节点并开始监听相交状态变化情况

参数
参数类型默认值必填说明
targetSelectorString是选择器
callbackFunction是用来扩展(或收缩)参照节点布局区域的边界

IntersectionObserver.observe.callback(Object res)

属性类型说明
idString节点 ID
datasetObject节点自定义数据属性键值对
intersectionRatioNumber相交比例
intersectionRectObject相交区域的边界
boundingClientRectObject目标边界
relativeRectObject参照区域的边界
timeNumber相交检测时的时间戳

intersectionRect

属性类型说明
leftNumber左边界
rightNumber右边界
topNumber上边界
bottomNumber下边界
widthNumber宽度
heightNumber高度

boundingClientRect

属性类型说明
leftNumber左边界
rightNumber右边界
topNumber上边界
bottomNumber下边界
widthNumber宽度
heightNumber高度

relativeRect

属性类型说明
leftNumber左边界
rightNumber右边界
topNumber上边界
bottomNumber下边界

IntersectionObserver.disconnect()

停止监听。回调函数将不再触发