如何在android中加载我的js文件?

时间:2014-07-08 06:23:55

标签: javascript android html

嗨,我对android中的java脚本很新?我的问题是我的文件没有加载到android资产中。

当我运行我的代码时,我得到了例外。

07-08 11:49:10.809: I/chromium(25627): [INFO:CONSOLE(1)] "Uncaught ReferenceError: myFunction is not defined", source:  (1)
07-08 11:49:11.100: I/chromium(25627): [INFO:CONSOLE(78)] "Uncaught TypeError: Cannot call method 'getContext' of null", source: file:///android_asset/keyGasGraphBuilder.js (78)

但在我的代码中,我添加了资产中的所有文件。

并且我在加载

时在html页面中添加了我的code.js文件
<script type="text/javascript" src="file:///android_asset/code.js"></script>

从我调用的代码

duvaltriangle.getSettings().setJavaScriptEnabled(true);
        WebSettings setting =duvaltriangle.getSettings();
        duvaltriangle.loadUrl("file:///android_asset/Dynamic Ratings - Duval DEMO.htm");

        String name = "Duval 2b OLTC Type IIb";

        duvaltriangle.loadUrl("javascript:myFunction(\""+name+"\")");

我的js文件:

请告诉我我错过的地方。我想我已经完成了所有程序。

function myFunction(name) 
 {
document.getElementById("demo").innerHTML = name;
 }

1 个答案:

答案 0 :(得分:1)

使用:

duvaltriangle.loadUrl("file:///android_asset/Dynamic Ratings - Duval DEMO.htm");
        duvaltriangle.setWebViewClient(new WebViewClient() {

            public void onPageFinished(WebView view, String url) {
                String name = "Duval 2b OLTC Type IIb";
                duvaltriangle.loadUrl("javascript:myFunction(\""+name+"\")");
            }
        });

因为加载网址需要时间。因此,页面加载完成后必须加载脚本。