HarmonyOS Web 控件加载pdf文件无法监听滚动

Web({
  src: this.url,
  controller: this.jsBridge.controller
})
  .javaScriptAccess(true)
  .javaScriptProxy(this.jsBridge.javaScriptProxy)
  .zoomAccess(false)
  .onPrompt((event) => this.jsPrompt.onJsPrompt(event))
  .onPageBegin((event) => this.webLoad.webPageBegin(event))
  .onPageEnd((event) => {
    WebCookies.syncDefaultApiCookieToWeb(this.url)
    this.webLoad.webPageEnd(event)
  })
  .multiWindowAccess(false)
  .cacheMode(CacheMode.Online)
  .onControllerAttached(() => {
    Timber.tag("Bridge").d("agent -> " + this.jsBridge.controller.getUserAgent())
  })
  .mixedMode(MixedMode.All)
  .domStorageAccess(true)
  .databaseAccess(true)
  .fileAccess(true)
  .imageAccess(true)
  .textZoomRatio(100)
  .password(false)
  .width('100%')
  .height('100%')
HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Excelsior_abit

目前pdf是以插件的形式在web中加载的,暂不支持监听滚动条; 可以通过web组件的onOverScroll通知网页过度滚动的偏移量的回调判断PDF是否到达顶端,底端。参考代码:

import web_webview from '@ohos.web.webview';

@Entry
@Component
struct WebPage {
  controller: web_webview.WebviewController = new web_webview.WebviewController()
  build() {
    Column() {
      Web({ src: $rawfile('123.pdf'), controller: this.controller })
        .javaScriptAccess(true)
        .domStorageAccess(true)
        .verticalScrollBarAccess(true)
        .onOverScroll((event) => {
          if (event.yOffset < 0) {
            console.log('已到达顶端')
          }
          if (event.yOffset > 0) {
            console.log('已到达底端')
          }
        })
    }
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS web组件加载pdf问题
632浏览 • 1回复 待解决
HarmonyOS Web组件加载pdf预览
260浏览 • 1回复 待解决
HarmonyOS WebView加载url无法滚动
35浏览 • 1回复 待解决
HarmonyOS使用Web组件如何监听滚动位置
580浏览 • 2回复 待解决
通过loadDocument()接口加载PDF文件
490浏览 • 1回复 待解决
HarmonyOS web控件加载富文本,字太小
524浏览 • 1回复 待解决
HarmonyOS Web组件加载html文件异常
510浏览 • 1回复 待解决
HarmonyOS 怎么打开PDF文件
194浏览 • 1回复 待解决