考虑以下 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 会随版本变化,甚至被删除。您已收到警告!