要实现“保持子级可访问性偏好的情况下切换覆盖层父级可访问性”,可以使用以下代码示例来解决:
在上面的代码中,首先我们使用了aria-hidden属性来控制元素的可访问性。当aria-hidden属性的值为true时,元素将被标记为隐藏,不可访问。当aria-hidden属性的值为false时,元素将被标记为可见,可访问。
然后,通过JavaScript中的setAttribute方法来切换元素的aria-hidden属性的值,从而实现切换元素的可访问性。
最后,我们使用focus方法来切换焦点。当覆盖层元素可见时,我们将焦点设置在覆盖层元素上;当覆盖层元素隐藏时,我们将焦点设置在父级元素上。
这样,就可以在保持子级可访问性偏好的情况下切换覆盖层父级可访问性。