javascript – Android:Web App在Chrome中运行,但不在Webview中运行

前端之家收集整理的这篇文章主要介绍了javascript – Android:Web App在Chrome中运行,但不在Webview中运行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的网络应用程序中使用ng-hide和ng-show来处理根据用户登录状态显示内容.如果我在手机上使用Chrome浏览器并运行该网站,则此功能完全正常.

但是,当我尝试在我的应用或默认手机非Chrome浏览器上的网页浏览中显示它时,它无效.没有任何内容被隐藏,并且绑定到angularJS功能的按钮不起作用.请注意,我确实设置了setJavaScriptEnabled(true).

当我看到这个问题时,我注意到一些AngularJS功能在某些浏览器(尤其是IE)上不起作用,因此AngularJS可能与默认的Webview不兼容.那么是否有一种解决方法或某种方式让我使webview模拟Chrome浏览器?

Chrome浏览器上的应用:http://gyazo.com/8a8a56bdac1eb7e91753bc4745433a42
Webview上的App:http://gyazo.com/a58de6192aa822af05a2885560e66f91

logcat中存在以下错误,我已经调查过并且没有任何意义,因为这两个变量在非webview环境中都没有问题.

E/Web Console﹕ Uncaught SyntaxError: Unexpected identifier:103
E/Web Console﹕: Uncaught Error: No module: AuthApp:17

未捕获的语法错误对应于下面的内容,其中结果是我从Parse获得的查询结果.请注意,我已经在其他浏览器中检查了结果的内容,实际上它将结果返回给我的查询.

for (var result of results){
...
}

解决方法

在您的网页浏览中尝试这些设置.我过去在这些方面取得了成功
mWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setAllowUniversalAccessFromFileURLs(true);
webSettings.setDomStorageEnabled(true);
mWebView.setWebChromeClient(new WebChromeClient());

猜你在找的JavaScript相关文章