问题标签 [qtwebview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何使用 QML QtWebView 调用 C++?
在 Qt 5.5 中,使用他们提供的Minibrowser 示例,它使用了不同于QWebView widget的东西。相反,它使用 QML 和QtWebView 模块。当您查看 Javascript 时navigator.appVersion,它会让您知道 QWebView 加载自定义 AppleWebKit/538.1(Qt5.5 附带的东西),而 QtWebView(注意区别)加载本机核心 OS AppleWebKit/601.1.56。这得到了证实,因为当我在我的 OSX(El Capitan 版本)上加载 Safari 时,它显示 601.1.56。
然而,问题是我在 Minibrowser 中的 Javascript 函数如何在后端调用 C++ 函数来执行更强大的功能?当我使用 QWebView 小部件时,我能够使用C++ webkit 桥接器,它让我将 C++ 对象注入到 DOM 中,因此可以调用我的 C++ 代码。我没有看到任何关于如何使用 QtWebView 的基于 QML 的 Minibrowser 示例执行此操作的技术。什么技术?
编辑:哦,澄清一下,我不是通过网络服务器调用远程网页。我只是通过 file:// 调用东西。换句话说,我使用丰富的 webkit 界面为我提供了一个超强大的 GUI,它远远超出了 Qt 小部件和 QML 可以为我提供的功能。
node.js - 如何在 QWebView 中加载自我认证的 https nodejs 服务器的 url
- 使用自认证密钥运行 nodejs https 本地服务器进行测试。
- 在 QT Application 的 QWebView 中加载https://localhost:8888/index.html 。
QWebView 不显示任何内容。
qt - QtWebEngine : 使用 HTTPPost 加载 URL
我正在将内部浏览器从 QtWebKit 移植到 QtWebEngine。
我想要一个在发布一些数据时请求 url 的函数。使用 WebKit,我可以使用以下内容:
使用派生自 QtWebView 的类 WebView :
由于 QtWebEngine 确实与 QNetworkAccessManager 交互,我们如何才能拥有与 QtWebEngine 相同的功能?
谢谢
qt - 从使用 Qt 显示的外部网页获取响应
我有一种情况,我想调出一个用户将与之交互的网页,当他们单击提交按钮时,会发送一个响应,我想在我的 Qt 程序中获取该响应,然后用这页纸。我能够调出这样的页面:
但我不知道如何在用户提交页面时获得响应,也不知道如何销毁页面。
在网上我找到了这样做的信息:
或这个:
哪个看起来更好,但我仍然不知道如何从页面返回响应。
更新:这是我目前的代码:
javascript - qt webkit 中的 Javascript 调试
问候
我正在尝试使用 qt web-kit 调试 java-script,但它不起作用。
这就是我所做的。我右键单击 qt web-view 并选择“检查”,在检查器窗口中,转到“脚本”选项卡,选择“仅启用此会话/始终启用”,然后按“启用调试”按钮。在 java-script 文件中,我在函数中放置断点(通过单击行号)。我也可以在窗口右侧的“断点”组中看到该行。我执行了导致函数启动(在 UI 中)的特定操作,但没有任何反应,断点未命中并且函数返回。我通过输入函数的名称和参数从控制台手动调用函数,但仍然没有任何反应。函数返回而不打断点。
我也启用了JavascriptEnabled.
我使用 QT 4.8 和 Visual Studio 2008。
任何人都可以告诉我这里有什么问题吗?!
先谢谢了
qt - 如何在 qwebkit 中复制网页?
假设我有两个 qwebview 小部件。让我们将其称为 W1 和 W2,然后我将网址设置为
两个页面都有单独的 css 文件。
然后我将更改 w1 中某些元素的背景
到目前为止一切都很好,背景变为红色。
现在我想用 w1 替换 w2 中的页面(不使用.seturl),包括 w1 的样式表。然后我希望能够在不影响其他颜色的情况下更改它们的颜色
我试过.toHtml()and .sethtml(),但这只会复制 html(当然),因此 w1 的所有样式都丢失了。
还尝试了许多其他方法,包括.setpage等.clone...但它似乎只更改了 html,或者它更改了指向它的指针,(所以如果我对 w1 进行更改,它只会影响 w2 并且不能再触摸 w1 ETC..)
是否有可能做到这一点?另外,是否可以在不需要每个小部件的情况下做到这一点?
c++ - QWebView 可以从 Qt 资源文件中加载 *.js 并运行它们吗?
我有看起来像这样的qrc文件:
在assets.js 中只是添加了弹出提示的功能:
在index.html中添加另一个 javascript 用于弹出警报、加载assets.js并添加 2 个按钮。第一个从外部 javascript 文件 ( assets.js ) 调用窗口弹出窗口,第二个调用嵌入到index.html文件中的 javascript:
现在,当我尝试在 qtwebkit中加载index.html时:
我可以看到index.html已加载正常(我可以看到 2 个按钮)单击应该调用本地(嵌入 html)javascript 的按钮时,它可以工作。单击第二个按钮什么也不做。
似乎外部assets.js未正确加载。有什么建议我可以让它工作吗?
谢谢。
python - 替代 QWebView()
由于 QWebView() 在 Ubuntu 16.10 及以后版本中可能不可用,因此还有什么替代方法可以执行以下操作:
view = QWebView()
view.load(QUrl('http://example.com')
python-3.x - PyQt 加载页面 - 检查错误 ErrorPageExtension
我正在尝试加载静态 html 页面,但加载页面为假。(这在本地工作,但不在 docker 容器内)。
该文件loadProgress为 100%,但我得到 OK 信号,false表明加载页面时出错。我正在尝试使用 ErrorPageExtension (从网上找到)来找出详细的错误消息是什么。在加载页面时出现错误时,有人可以说明如何调用扩展程序吗?我错过了什么吗?
