【问题标题】:Style property not working in webview样式属性在 webview 中不起作用
【发布时间】:2018-02-06 11:20:52
【问题描述】:

我正在从资产加载 html 页面并在应用程序中显示。正在显示 HTML 页面,但是当我尝试在“onclick”上更改按钮的背景颜色时,背景颜色没有改变。

如果我使用浏览器测试页面,那么它可以工作,但是当我使用 webview 在 android 中加载 html 页面时,它就无法工作。

onclick 函数被调用,但不知何故未应用样式属性。 我尝试了以下三种方式。

1. $('#btnAC').css({'background-image', 'linear-gradient(180deg, black, red) !important'});  

2. document.getElementById("btnAC").style = "background-image: linear-gradient(180deg, black, red) !important;";  

3. $('#btnAC').css('background-image', 'linear-gradient(180deg, black, red) !important');

Java 代码:

WebView webView = (WebView) findViewById(R.id.webView);
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webView.loadUrl("http:///android_asset/Web/index.html"); 

【问题讨论】:

  • 确保您已设置 java 脚本接口启用。 webview.getSettings().setJavaScriptEnabled(true);webview.getSettings().setAllowFileAccess(true);
  • 是的,已经添加了
  • 这可能对你有帮助 stackoverflow.com/questions/4950729/…
  • 我遇到了同样的问题。我所做的是两次应用样式而不是只应用一次。但是,随着最近的 webview 更新,这不再有效。你找到解决办法了吗?

标签: android html css webview styles


【解决方案1】:

你可以使用 WebView.loadDataWithBaseURL

  • htmlData = "" + htmlData; // 假设我们有 /assets/style.css 文件 webView.loadDataWithBaseURL("file:///android_asset/", htmlData, "text/html", "UTF-8", null);*

【讨论】:

    猜你喜欢
    • 2023-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 2017-10-29
    • 2012-11-22
    相关资源
    最近更新 更多