【问题标题】:Android webview loading css from assets, but not jsAndroid webview从资产加载css,但不是js
【发布时间】:2016-01-21 17:06:51
【问题描述】:

使用 Android Studio 和 avd 模拟器。 css 明确加载,js 将从 head 内执行或附加到 body 标签,但不会从 assets 中的外部文件执行。

我的 MainActivity:

WebView webview = new WebView(this);
    webview.setWebChromeClient(new WebChromeClient());
    WebSettings webSettings = webview.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setAllowUniversalAccessFromFileURLs(true);
    webSettings.setAllowFileAccessFromFileURLs(true);
    webview.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);
    setContentView(webview);

我的html头:

<link rel="stylesheet" href="my.css" />
<script src="jquery.mobile.min.js" type="text/javascript" />
<script src="my.js" type="text/javascript" />

测试在 head 但不在外部 my.js 中执行的 JS(无 jquery):

 function var1() {
  document.getElementById('jstest').innerHTML = 'hi';
}

window.onload = var1;

我目前的看法:

查理·布朗。

【问题讨论】:

    标签: android android-webview


    【解决方案1】:

    更改为 jquery.min.js 并摆脱移动版本已经解决了所有问题。它可能使整个 js 倾斜,但内联首先处理。

    【讨论】:

      猜你喜欢
      • 2017-06-06
      • 1970-01-01
      • 2017-11-04
      • 1970-01-01
      • 1970-01-01
      • 2013-07-29
      • 2011-03-10
      • 1970-01-01
      • 2022-09-27
      相关资源
      最近更新 更多