iPhone - 当 VoiceOver 打开时 iScroll 不工作

iPhone - iScroll doesn't work when when VoiceOver is on

我有一个使用 iScroll 插件的 Cordova Mobile 应用程序。令我惊讶的是,当我 运行 处于 VoiceOver 模式(三指滑动 up/down 手势)的应用程序时,滚动不起作用。即使内容存在超过 2 页,它也只会读取第 1 页,共 1 页。

是否有任何角色属性可以使页面滚动?请帮忙。

我发现 iScroll 正在使用变换 CSS 属性 进行滚动。 我能够解决这个问题。 也许你也可以尝试同样的方法。

  1. 将以下样式添加到您的父级 div

-webkit-溢出-滚动:触摸

  1. 有一个phonegap插件可以监听VoiceOveron/offhttps://github.com/phonegap/phonegap-mobile-accessibility

    // 定义一个持久化的回调方法来处理事件 功能 onScreenReaderStatusChanged(信息){ 如果(信息 && typeof info.isScreenReaderRunning !== "undefined"){ 如果(info.isScreenReaderRunning){ console.log("Screen reader: ON"); // 当屏幕 reader 处于活动状态时,做一些事情来改善应用程序的行为。 } 别的 { console.log("Screen reader: OFF"); } } }

    // 注册回调方法来处理事件 window.addEventListener(MobileAccessibilityNotifications.SCREEN_READER_STATUS_CHANGED, onScreenReaderStatusChanged, false);

在画外音 ON 事件中,您可以销毁 iScroll(或将 useTransform 属性 设置为 false)。 画外音 OFF 您可以重新启动 iScroll。

如果有效请告诉我。