HarmonyOS Web组件无法弹出网页的alert弹框

使用Web组件,网页中alert("123")弹框点击没反应,请问如何解决

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

alert在webview组件中被屏蔽了,可以使用弹窗实现,可参考以下代码实现:

// xxx.ets  应用侧代码
import web_webview from '@ohos.web.webview'

@Entry
@Component
struct WebComponent {
  controller: web_webview.WebviewController = new web_webview.WebviewController()

  build() {
    Column() {
      Web({ src: $rawfile("index.html"), controller: this.controller })
        .onAlert((event) => {
          if (event) {
            console.log("event.url:" + event.url)
            console.log("event.message:" + event.message)
            AlertDialog.show({
              title: 'onAlert',
              message: 'text',
              primaryButton: {
                value: 'cancel',
                action: () => {
                  event.result.handleCancel()
                }
              },
              secondaryButton: {
                value: 'ok',
                action: () => {
                  event.result.handleConfirm()
                }
              },
              cancel: () => {
                event.result.handleCancel()
              }
            })
          }
          return true
        })
    }
  }
}
//html代码
<!--index.html-->
<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" charset="utf-8">
</head>
<body>
<h1>WebView onAlert Demo</h1>
<button onclick="myFunction()">Click here</button>
<script>
    function myFunction() {
      alert("Hello World");
    }
</script>
</body>
</html>
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS web组件alert不显示
562浏览 • 1回复 待解决
HarmonyOS 自定义组件问题
460浏览 • 1回复 待解决
自定义,遮罩背景颜色无法设置
333浏览 • 1回复 待解决
HarmonyOS 应用级全局
314浏览 • 1回复 待解决
HarmonyOS API调用与Dialog
247浏览 • 0回复 待解决
HarmonyOS 如何主动隐藏输入
129浏览 • 1回复 待解决
HarmonyOS Dialog生命周期问题
565浏览 • 1回复 待解决
HarmonyOS Web加载网页白屏
516浏览 • 1回复 待解决
HarmonyOS 如何做到页面在之上?
439浏览 • 1回复 待解决
获取定位权限没有
1900浏览 • 1回复 待解决
代码获取后台权限?
3343浏览 • 1回复 待解决
自定义状态获取
864浏览 • 1回复 待解决