我的 Activity 中有以下代码:
browser = (WebView)findViewById(R.id.webkit);
browser.getSettings().setJavaScriptEnabled(true);
browser.getSettings().setPluginsEnabled(true);
browser.getSettings().setDomStorageEnabled(true);
/*if (Build.VERSION.SDK_INT >= 16) {
browser.getSettings().setAllowFileAccessFromFileURLs(true);
browser.getSettings().setAllowUniversalAccessFromFileURLs(true);
}*/
// Loads html-string into webview
browser.loadUrl("file:///android_asset/index.html");
页面加载良好,CSS 加载良好,图像都加载良好。不过我还有一个本地js文件。目前仅包含一条警报消息 alert("JSEnabled");
但警报从未出现。我该如何诊断这个问题?
我目前正在使用模拟器来开发该项目,并且必须支持回 Gingerbread (2.3.3)。
顺便说一句,当我在模拟器上使用浏览器应用程序时,相同的 html/js 工作正常(指向相同 HTML/js 的远程服务版本)
我还应该指出 - 所有文件都位于项目的 asset 文件夹中,并且我尝试将 js 引用为 file:///android_assets/main.js 和 main.js。我什至尝试引用远程 js 文件。没有任何效果...
最佳答案
要使用您的 javascript 警报,请将其添加到您的 WebView
webview.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message,
JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
关于javascript - Android WebView Javascript 未启用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13797772/