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
2024-12-17 14:03:13
浏览
收藏 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
微信
回复
2024-12-17 16:11:03
相关问题
HarmonyOS web组件加载pdf问题
1150浏览 • 1回复 待解决
HarmonyOS Web组件加载pdf预览
798浏览 • 1回复 待解决
HarmonyOS使用Web组件如何监听滚动位置
889浏览 • 2回复 待解决
HarmonyOS WebView加载url无法滚动
431浏览 • 1回复 待解决
HarmonyOS web组件预览PDF文件问题
451浏览 • 1回复 待解决
HarmonyOS web控件加载富文本,字太小
1020浏览 • 1回复 待解决
HarmonyOS web控件加载url速度慢
244浏览 • 1回复 待解决
通过loadDocument()接口加载PDF文件
784浏览 • 1回复 待解决
HarmonyOS Web加载PDF如何去除工具栏
310浏览 • 1回复 待解决
HarmonyOS Web组件无法加载页面
456浏览 • 1回复 待解决
HarmonyOS web加载沙箱文件失败
432浏览 • 1回复 待解决