如何从pyside qwebview中的本地计算机加载javascript?

时间:2013-04-25 18:27:53

标签: javascript python pyside qwebview

我的档案

messi_fan.py
barcelona_fan.html
jq.js

在同一目录中。

messi_fan.py

        f = open('barcelona_fan.html', 'r')
        html = f.read()
        f.close()
        self.webView = QWebView()
        self.webView.setHtml(html, baseUrl=QUrl('http://local'))
        self.webView.show()

barcelona_fan.html

<script type="text/javascript" src = "jq.js"></script>

我的问题是jquery没有在Qwebview中加载。如果我在barcelona_fan.html中使用这样的话

<script type="text/javascript" src = "http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
一切都会奏效。但我想从本地加载.js文件。我可以这样做吗?

1 个答案:

答案 0 :(得分:2)

让baseUrl查看本地目录:

path = "c:\\foo\\bar"
self.webView.setHtml(html, baseUrl = QUrl().fromLocalFile(path))
顺便说一句:如果需要,请不要忘记:

self.webView.settings().setAttribute(QWebSettings.LocalContentCanAccessRemoteUrls, True)