Lynx 提供了两种检测节点可见性的能力,一种是 Lynx 独有的曝光能力,开发者可以据此便捷地监听节点是否曝光;另一种是类 Web 的交叉观察器,这是一种更加原子的能力,开发者可以通过它来监听节点的交叉位置。
当开发者主要关注多个节点是否在屏幕上而不关注节点交叉位置,并且希望快速地编写代码时,可以使用曝光能力。
曝光能力是一个声明式接口,开发者可以通过 exposure-id 属性来指定需要监听曝光的节点,当节点出现时,会触发曝光事件 exposure,当节点消失时,会触发反曝光事件 disexposure。
在下面这个例子中,开发者监听节点是否曝光/反曝光,实时显示在屏幕上可见的节点 exposure-id