如何在Android WebView中使用JavaScript加载本地HTML?

时间:2011-10-25 20:27:06

标签: javascript android html webview

我用HTML和JavaScript编写了一个游戏。我已经将HTML文件本地加载到WebView中,但它没有加载JavaScript。我想知道如何让HTML使用JavaScript。非常感谢任何帮助。

6 个答案:

答案 0 :(得分:3)

尝试此代码..此代码适用于..希望它对您也有帮助。

WebView webView;
        webView = (WebView) findViewById(R.id.wbView);
        webView.getSettings().setPluginsEnabled (true);
        webView.getSettings().setJavaScriptEnabled (true);

答案 1 :(得分:1)

您可以在此处查看:http://developer.android.com/resources/tutorials/views/hello-webview.html

为了通过webview获得js的一般视角,更具体地说:

mWebView.getSettings().setJavaScriptEnabled(true);

希望这有帮助!

答案 2 :(得分:0)

你可以试试这个:

String html = "<html><body>Hello, World!</body></html>";
String mime = "text/html";
String encoding = "utf-8";
WebView myWebView = (WebView)this.findViewById(R.id.myWebView);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.loadDataWithBaseURL(null, html, mime, encoding, null);

答案 3 :(得分:0)

只需像这样加载html文件:

webView.loadUrl("file://" + getContext().getExternalCacheDir() + "/editor.html");
希望它可以帮助你!

答案 4 :(得分:0)

    binding.webview.settings.javaScriptEnabled=true
    binding.webview.loadUrl("file:///android_asset/GeneralCF.html")

    binding.your_view.setOnClickListener {
        // load js on click button
        binding.webview.loadUrl("javascript:myFunction(\"$str_name\")")
    }

index.js

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

GeneralCF.html

        <!doctype html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="Generator" content="EditPlus®">
        <meta name="Author" content="">
        <meta name="Keywords" content="">
        <meta name="Description" content="">
        <title>Document</title>
        <script src="index.js"></script>
    
    </head>
    <body>
    
    <h1>This is my first webpage</h1>
    
    <p id="demo">A Paragraph.</p>
    
    <button type="button" onclick="myFunction()">Try it</button>
    
    
    </body>
    </html>

答案 5 :(得分:-1)

字符串编码的HTML  = Base64.encodeToString(html_code_goes_here_string_object.getBytes(),Base64.NO_PADDING); webView.loadData(encodedHtml,“ text / html”,“ base64”);