- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有使用 QtWebkit 的简单 Qt GUI 应用程序。我正在加载带有很多嵌套 IFRAME 标签的复杂页面。我想遍历完整的 DOM 树(就像 Chrome 浏览器在调试面板中所做的那样),包括 iframe 的内容。
我的代码是:
QWebElement doc = ui->webView->page()->mainFrame()->documentElement();
QWebElement iframe = doc.findFirst("iframe[id=someid]");
QWebFrame *webFrame = ....? // how to get the QWebFrame for an iframe/frame QWebElement?
void MainWindow::renderFramesTree(QWebFrame *frame, int indent)
{
QString s;
s.fill(' ', indent * 4);
ui->textLog->appendPlainText(s + " " + frame->frameName());
foreach (QWebFrame *child, frame->childFrames())
renderFramesTree(child, indent + 1);
}
最佳答案
每个 QWebFrame 都有 QList<QWebFrame *> QWebFrame::childFrames () const
方法。每帧还有QString QWebFrame::frameName () const
.将两者结合起来可能会让您找到所需的东西。
QWebFrame * frameImLookingFor = NULL;
foreach(QWebFrame * frame, ui->webView->page()->mainFrame()->childFrames())
{
if (frame->frameName() == QLatin1String("appFrame"))
{
frameImLookingFor = frame;
break;
}
}
if (frameImLookingFor)
{
// do what you need
}
关于qt - 如何获取 iframe/frame QWebElement 的 QWebFrame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13189296/
给一个QWebElement ,如何发送关键事件?类似于此(在 QWebWidget 中): QKeyEvent keyEvent(QEvent::KeyPress, Qt::Key_Enter, Q
如何在输入字段中获取用户输入? QObject::connect( webView, SIGNAL(loadStarted()), this, SLOT(slotLoadStarted()) ); v
为 QWebElement 触发类似用户的事件(如鼠标单击链接)是否真实? 即,例如,从当前帧(使用 QWebKit)为 html 标记(“”)给定 QWebElement 我想以编程方式 click
我想自动填写雅虎注册的第一个表格(https://edit.yahoo.com/registration?)。首先让我向您保证,这只是为了练习 Qt Webkit 而已。我没有伤害雅虎或其他任何人的意
我在主线程中创建了一个 QWebPage(您不能在其他任何地方创建它)。我想使用 Qt 4.6 中引入的 QWebElement API 来操作此页面,但在一个单独的线程中。这样该线程将获取对页面的引
我有一个 Qt 4.7 程序,我在其中使用 QWebElement 来解析 HTML 文件的部分内容。例如,如果我需要类“A”下的 HTML 部分,我将运行以下代码: QWebView wv; wv.
我正在尝试将照片上传到 vk.com使用 QtWebKit模块。我面临的问题是无法正确填写input(type="file")的值(value)。这是我使用的一些相关代码: def upload():
我目前正在开发一款可以查询 gatherer.magic.com 以构建卡片数据库的软件。在测试我的功能时,我发现我得到了奇怪的结果。我的功能如下: void cardDB::updateDB() {
我有使用 QtWebkit 的简单 Qt GUI 应用程序。我正在加载带有很多嵌套 IFRAME 标签的复杂页面。我想遍历完整的 DOM 树(就像 Chrome 浏览器在调试面板中所做的那样),包括
我正在使用 QWebPage 类在我的 QT 应用程序的后台加载页面。每当它发出“repaintReqest”时,我都会尝试将主框架的内容渲染到画家(QImage)上使用如下代码: QWebpage
我正在为 im 客户端开发插件,它将在 QWebView 中显示聊天记录。插件必须支持 html 模板。现在我正在尝试通过调用 QWebElement.appendInside(‘new messag
我是一名优秀的程序员,十分优秀!