HarmonyOS Webview如何监听滚动事件?H5如何直接调用拨打电话?

HarmonyOS的webview如何监听滚动事件?H5如何直接调用拨打电话?API 11的。

HarmonyOS
2024-12-17 14:14:18
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

webview监听滚动事件以及电话调起代码如下: 第一个web组件监听滚动事件,第二个web组件H5调起拨打电话。

//xxx.ets
import webView from '@ohos.web.webview';
import { call } from '@kit.TelephonyKit';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct WebPage {
  controller: webView.WebviewController = new webView.WebviewController();
  aaa: number = 0

  build() {
    Column({ space: 20 }) {
      Web({ src: 'https://developer.huawei.com/consumer/cn/', controller: this.controller })
        .height(500)
        .javaScriptAccess(true)
        .domStorageAccess(true)
        .verticalScrollBarAccess(true)
        .onScroll((event) => {
          if (event.yOffset > this.aaa) {
            console.log('aaa下滑')
          }
          if (this.aaa > event.yOffset) {
            console.log('aaa上滑');
          }
          this.aaa = event.yOffset
        })

      Divider()

      Web({ src: $rawfile('call.html'), controller: this.controller })
        .height(500)
        .onLoadIntercept((event) => {
          if (event) {
            let url: string = event.data.getRequestUrl();
            // 判断链接是否为拨号链接
            if (url.indexOf('tel://') === 0) {
              call.makeCall(url.substring(6), (err: BusinessError) => {
                if (!err) {
                  console.log('make call success.');
                } else {
                  console.log('make call fail, err is:' + JSON.stringify(err));
                }
              });
              return true;
            }
          }
          return false;
        })
    }

  }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.

call.html:

<!DOCTYPE html> <html> <body> <div> <a href="tel://10086">拨打电话</a> </div> </body> </html>
  • 1.
分享
微博
QQ
微信
回复
2024-12-17 16:23:11
相关问题
HarmonyOS 如何调用拨打电话界面
1122浏览 • 1回复 待解决
HarmonyOS 如何直接调起拨打电话
1208浏览 • 1回复 待解决
HarmonyOS APP能否直接进行拨打电话
753浏览 • 1回复 待解决
HarmonyOS webview H5页面事件监听
1433浏览 • 1回复 待解决
HarmonyOS 拨打电话功能
786浏览 • 1回复 待解决
HarmonyOS 拨打电话系统能力
1605浏览 • 1回复 待解决
web中如何拉起鸿蒙拨打电话的功能
287浏览 • 0回复 待解决
申请拨打电话权限无效
6999浏览 • 1回复 待解决
HarmonyOS 判断是否有拨打电话权限
1058浏览 • 1回复 待解决
HarmonyOS有没有拨打电话的相关资料
1424浏览 • 1回复 待解决
HarmonyOS webview h5的localstorage
1096浏览 • 1回复 待解决
如何实现H5自定义事件
3428浏览 • 1回复 待解决
HarmonyOS WebView加载H5卡顿
978浏览 • 1回复 待解决
HarmonyOS app调用打电话功能报错
1054浏览 • 1回复 待解决
webview加载Vue h5失败
18792浏览 • 5回复 待解决
HarmonyOS 如何webview监听调用事件
765浏览 • 1回复 待解决