我有一些应该从javascript操纵CSS的代码。但是,当我将代码移动到Android中的file:// access时,似乎是在WebView中运行Web应用程序的推荐方法,当下面的代码尝试运行时出现错误:
return document.styleSheets[0].cssRules[0].style
值为“cssRules”始终为null,这是意外的。
我发现this file,这似乎是由于Chrome开发人员拒绝修复Chromium中的“错误”。
我想知道这是否真的是我遇到的错误,如果有的话,如果有解决方法的话。如何在本地运行时在WebView中操作来自Javascript的CSS?我应该放弃在本地运行的整个概念吗?我担心可能有其他类似的东西会咬我。
答案 0 :(得分:0)
在我的代码中,我已经打电话了:
webSettings.setAllowFileAccess(true);
但是我发现如果我添加以下代码,它会放松对本地文件访问的所有安全限制,并且我可以从Javascript访问CSS:
if (Build.VERSION.SDK_INT >= 16 ) {
webSettings.setAllowFileAccessFromFileURLs(true);
webSettings.setAllowUniversalAccessFromFileURLs(true);
}