javascript - 嵌入式 WebView 中的警报

标签 javascript android webview

当在应用程序中嵌入 WebView 并在其中加载 html 页面时,JavaScript 的 alert() 不起作用。请给我一个例子

最佳答案

嵌入式浏览器实现的默认 WebChromeClient 将丢弃 javascript 警报,您应该用您自己的版本覆盖 WebChromeClient 实现,这也允许您创建自己的能力自己的自定义警报代替默认警报,如下所示:

browser.setWebChromeClient(new MyWebChromeClient());

...

final class MyWebChromeClient extends WebChromeClient {
    @Override
    public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
        Log.d(LOG_TAG, message);
        new AlertDialog.Builder(view.getContext()).setMessage(message).setCancelable(true).show();
        result.confirm();
        return true;
    }
}

关于javascript - 嵌入式 WebView 中的警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2979291/

相关文章:

javascript - 如何用包含升序字符串化数字的对象填充数组?

javascript - React Native 在 Snack.expo.io 上使用本地字体

javascript - Dojo 轻量级 (3.8kb) AMD 加载器在哪里?

java - 从 android 应用程序转换的黑莓 10 应用程序的 javascript 调用 java 函数

java - 解锁时锁定屏幕上的 SlidingTab 会振动 - 无论有关触觉反馈的全局设置如何

android - 带有 Webview 的 fragment 利用硬件后退按钮转到上一个网页

ios - 应用程序仅在IPAD Air上崩溃

android - 在 WebView 上禁用自动建议?

javascript - 防止 keyup 换行

javascript - react native TypeError : Attempted to assign to readonly property