HarmonyOS web如何获取html内容高度

we组件如何获取html 的高度

HarmonyOS
2025-01-09 17:26:00
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

可以在js里面监听html的高度,然后把高度值传输过来;放在ArkTS中的生命周期回调里面,html加载完毕的回调里面然后设置webview的高度。

参考demo:

// index.ets
import web_webview from '@ohos.web.webview';
@Entry
@Component
struct WebComponent {
  controller: web_webview.WebviewController = new web_webview.WebviewController();
  @State webResult: string = ''
  build() {
    Column() {
      Text(this.webResult).fontSize(20)
      Web({ src: $rawfile('index.html'), controller: this.controller })
        .javaScriptAccess(true)
        .aspectRatio(1.5)
        .onPageEnd(e => {
          this.controller.runJavaScript(
            'watchWindowSize()', (error,result)=>{
            this.webResult=result
            let pageHeight=this.controller.getPageHeight()+'';
            pageHeight=this.webResult;
            console.info('webResult='+this.webResult);
            console.info('pageHeight='+pageHeight);
          }
          );
        })
    }
  }
}
// index.html
<!DOCTYPE html>
  <html>
  <body><p>
  <h1>1111111111</h1>
  <h2>1111111111</h2>
  <h2>1111111111</h2> </p> </body>
  <script type="text/javascript">
  function watchWindowSize(){
    var h = document.body.clientHeight;
    return h;
  }
  </script>
  </html>
分享
微博
QQ
微信
回复
2025-01-09 20:01:30
相关问题
HarmonyOS Web如何搜索html界面的内容
1212浏览 • 1回复 待解决
HarmonyOS web高度自适应内容高度
1565浏览 • 1回复 待解决
HarmonyOS webView如何获取整体内容高度
753浏览 • 1回复 待解决
预览器上WEB组件无法显示HTML内容
4100浏览 • 1回复 待解决
HarmonyOS web组件怎么获取html页面标题
662浏览 • 1回复 待解决
webview 如何显示纯文本html内容
3488浏览 • 1回复 待解决
Web组件获取高度不一样
3680浏览 • 1回复 待解决
HarmonyOS Web组件如何加载html字符串
2018浏览 • 1回复 待解决
HarmonyOS Web无法访问指定html
1170浏览 • 1回复 待解决
HarmonyOS Web组件加载html文件异常
1698浏览 • 1回复 待解决
HarmonyOS Web组件高度问题
1562浏览 • 1回复 待解决