我是想获得一张网页中的超链接的指针。这张网页的超链接仅仅是在网页中起到一个定位的作用。如下
目录
1
2
3
内容
1。。。。。。
2。。。。。。
3。。。。。。
一张网页,当我点击“1”时,跳到内容“1。。。。。。”这里,其他2,3也一样。
然而我是想要获得目录中链接,1,2,3,的指针。如果能返回QUrl的指针当然就好了。希望有大虾出现指教。期待。。。。
------解决思路----------------------
看你网页这么熟,那就肯定就知道css选择器.
#include <QWebPage>
#include <QWebFrame>
#include <QWebElementCollection>
QWebElementCollection col = ui->webView->page()->mainFrame()->findAllElements("你的路径选择器");
for (int i = 0; i < col.count(); ++i)
{
qDebug() << col.at(i).toOuterXml();
}
------解决思路----------------------
这里有很多种办法,
这种适用性不强,组合url的情况很多,得自己组和出正确的url.
QWebElement col = ui->webView->page()->mainFrame()->findFirstElement("a[href][id=xdd]");
QUrl url(ui->webView->url());
QString strUrl = url.toString() + col.attribute("href");
ui->webView->load(QUrl(strUrl)); //组合出一个url 大概是这样的xxxx.html#xxxx;
还有就是直接调用javascript,但我测试的时候没有成功,我没有去深究原因
QWebElement col = ui->webView->page()->mainFrame()->findFirstElement("a[href][id=xdd]");
col.evaluateJavaScript("this.click()");
其它的什么方法不说了,自己研究