QWebView lädt kein externes Javascript?
Es ist möglich, mit QWebView eine externe Javascript-Datei aus dem HTML-Code zu laden?
Im folgenden QtProject (alle Dateien im selben Verzeichnis) befindet sich Javascript-Code direkt im HTML-Code und auch in einer externen Datei. Ich vermisse das externe Verhalten beim Laden in QWebView (im Browser funktioniert es einwandfrei):
MyApp.pro
QT += core gui webkitwidgets
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = MyApp
TEMPLATE = app
DESTDIR = ./
SOURCES += main.cpp
HEADERS +=
main.cpp
#include <QApplication>
#include <QtWebKitWidgets>
#include <QFile>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWebView *view = new QWebView;
view->show();
QFile file("qt.html");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return -1;
QString html = QTextStream(&file).readAll();
view->setHtml(html);
return a.exec();
}
qt.html
<html>
<head>
<script type="text/javascript" src="qt.js">
</script>
</head>
<body onload="hello()">
Test..
<script>
alert("Hello World INTERNAL!");
</script>
</body>
</html>
qt.js
function hello() {
alert("Hello World EXTERNAL!");
}