WebView 无法执行js代码
16lz
2021-01-24
下午在研究webView 与js之间的调用,于是到w3school上找了一个html的页面。
html页面:
type="button" οnclick="show_confirm()" value="弹出确认框" />android页面:
mWvWeb.getSettings().setJavaScriptEnabled(true);//设置可以响应JSmWvWeb.setWebViewClient(new WebViewClient());//限制在WebView中打开网页,而不用默认浏览器
mWvWeb.loadUrl("file:android_asset/test.html");
但是没想到这个html页面里的js竟然没有效果。这个js用电脑打开是没有问题的,可以正常调用。但是用android机器打开就无法调用。在网上找了很久才找到解决方案:
加上下面这段代码就可以执行JS代码了。
mWvWeb.setWebChromeClient(new WebChromeClient(){ @Override public boolean onJsAlert(WebView view, String url, String message, JsResult result) { return super.onJsAlert(view, url, message, result); }});
总结了一下,如果是alert没有被调用的话,就需要设置WebChromeClient。
更多相关文章
- 安全新手入坑——HTML标签
- 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
- Nginx系列教程(四)| 一文带你读懂Nginx的动静分离
- Android httpclient接收xml乱码问题解决方法
- Android之反编译APK文件,查看源代码
- Android(安卓)10动态申请读写权限
- android 呼叫已存在activity
- Android:WebView
- Android在启动adb时失败解决方案