【问题标题】:Android's Webview cannot handle javascript?Android 的 Webview 不能处理 javascript?
【发布时间】:2010-08-10 15:47:32
【问题描述】:

我的 android 应用程序显示网页(我为此使用了 webview)。 .但是网页上的javascript没有在webview中运行。如果我通过浏览器访问同一个网页,javascript正在运行。如何在应用程序中运行 javascript(使用 webview)?

【问题讨论】:

    标签: javascript html android


    【解决方案1】:

    启用Javascript! :

    WebSettings webSettings = myWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    

    WebView : setJavaScriptEnabled

    【讨论】:

    • mWebView = (WebView) findViewById(R.id.webview); mWebView.getSettings().setJavaScriptEnabled(true); WebSettings webSettings = myWebView.getSettings(); webSettings.setJavaScriptEnabled(true);我都试过了,它们都不适合我。
    • 它也支持 mathjax-config 吗?因为我的 webview 客户端没有显示一些数学函数,所以我搜索了很多,但没有任何效果@Elenasys
    【解决方案2】:

    来自Android documentation

    "默认情况下,WebView 不提供 类似浏览器的小部件,不启用 JavaScript 和网页错误是 忽略。如果你的目标只是 显示一些 HTML 作为您的一部分 UI,这可能很好;用户 不需要与网络交互 除了阅读之外的页面和网络 页面不需要与 用户。如果你真的想要一个 成熟的网络浏览器,然后你 可能想调用浏览器 带有 URL Intent 的应用程序,而不是 而不是用 WebView 显示它。

    ...

    但是,您可以修改 WebSettings,例如启用 JavaScript 与 setJavaScriptEnabled()。”

    【讨论】:

    • 这个答案是非常重要的OP,仅仅因为可以做的事情并不意味着你应该去做。
    【解决方案3】:

    有关使用 WebChromeClient 的简单方法,请参阅video tutorial

    如果你想要更多的js控制,你可以使用addJavascriptInterface的方法,但是你必须为这个方法创建你的html页面()。 看this sample

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-03
      • 2021-04-24
      相关资源
      最近更新 更多