作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何获取 QWebView 上的所有 document.body.innerText?我使用QT版本5.5.1。
例如,
要加载的html文件
<script>
document.write("hello world!");
</script>
我想要得到“hello world”。
所以,我在QT上尝试过这样
QWebView *wv = new QWebView(this);
QWebFrame *frame = wv->page()->mainFrame();
frame->load(QUrl("file:// ~ file path ~"));
QString string = frame->toPlainText();
// then write string to file for checking
我期望该字符串是“hello world”,但是什么也没有。我搜索并找到了这个link ,我就这样改了代码,但还是没有任何结果。
我可能误解了 toPlainText() 吗?我如何在 QT 5.5 上获取 DOM insideText?
最佳答案
您没有留出足够的时间来更新页面。 HTML 的加载需要一些时间,更不用说 Javascript 的执行了。
这里有一些解决方法:
document.write()
后向您的 C++ 代码发回通知。例如,您可以通过 WebSocket 执行此操作,或使用 Qt WebChannel .关于javascript - 如何在QWebView上获取DOM insideText?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41093151/
我是一名优秀的程序员,十分优秀!