如何使 WebView 透明?

如何使 WebView 透明?

考虑以下 QML 代码片段:

Page {
    WebView {
        id: webView
        anchors.fill: parent
    }
}

然后我尝试使用以下 JavaScript 在 WebView 中加载一些 HTML:

webView.loadHtml('<b>test</b>');

但是,WebView 的背景是白色的:

在此处输入图片描述

(请忽略文本太小的情况。)

有没有办法让背景变得透明?

答案1

您可以尝试 QtWebKit.experimental。如果您将 import QtWebKit.experimental 1.0 添加到 QML 文件中,您的 WebView 对象将可以访问实验性属性:

import QtQuick 2.0
import QtWebKit.experimental 1.0
import Ubuntu.Components 0.1


MainView {
    id: main
    width: units.gu(100)
    height: units.gu(75)

    Page {
        id: mypage
        Rectangle {
            color: "green"
            anchors.fill: mypage
            WebView {
                id: webView
                anchors.fill: parent
                experimental.transparentBackground: true
            }
        }

        Component.onCompleted: webView.loadHtml("<p>Hello</p>");
    }
}

显然你会收到这种警告:

警告:实验性 API 会随版本变化,甚至被删除。您已收到警告!

相关内容