【问题标题】:jquery is not defined in webpages that are loaded from assets directory从资产目录加载的网页中未定义 jquery
【发布时间】:2012-06-14 07:17:13
【问题描述】:

我的应用程序附带了一堆 html 文件,并捆绑在 assets 文件夹中。

我将这样的页面加载到我的 web 视图中:

WebView webView = (WebView) findViewById(R.id.webview);
WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setDomStorageEnabled(true);

webView.setWebChromeClient(new WebChromeClient() {

     @Override
     public void onConsoleMessage(String message, int lineNumber, String sourceID) {
        Log.d("MyApplication", message + " -- From line " + lineNumber + " of " + sourceID);
     }
});
webView.loadUrl("file:///android_asset/_lib/jquery-1.6.1.min.js");
webView.loadUrl("file:///android_asset/" + page);

现在如果页面包含这个:

<!-- jQuery library -->
<script type="text/javascript" src = "_lib/jquery-1.6.1.min.js"></script>
<script src = "_lib/jquery.easing-1.3.js"></script>

<!-- iosSlider plugin -->
<script src = "javascript/jquery.iosslider.js"></script>

我收到以下错误:

Uncaught ReferenceError: jQuery is not defined at file:///android_asset/javascript/jquery.iosslider.js:32

如果我从网络服务器加载相同的页面,javascript 会按预期工作。

【问题讨论】:

    标签: javascript android jquery android-webview


    【解决方案1】:

    问题似乎是lib文件夹前面的_。 jquery.iosslider.js 文件执行没有问题。

    我删除了文件夹名称和 html 文件中的 _,现在一切正常。

    【讨论】:

      猜你喜欢
      • 2018-11-23
      • 2011-03-10
      • 2017-10-03
      • 1970-01-01
      • 2019-05-09
      • 1970-01-01
      • 1970-01-01
      • 2019-10-28
      • 2019-05-12
      相关资源
      最近更新 更多