禁用在PhantomJs/QtWebKit中加载子帧(iframes)

禁用在PhantomJs/QtWebKit中加载子帧(iframes),iframe,webkit,phantomjs,qtwebkit,Iframe,Webkit,Phantomjs,Qtwebkit,是否有任何方法可以禁止在phantomJs甚至QtWebKit/webkit中加载子帧? 如果有必要的话,我可以大量使用源代码。 我正在做一些web操作,但我不需要iFrame的内容,它只会减慢加载时间 例如,我知道它可以在Mozilla中完成 webSetup->SetProperty(nsIWebBrowserSetup::SETUP_ALLOW_SUBFRAMES,PR_TRUE); 但到目前为止,我在QtWebKit中没有找到任何可以这样做的东西 也许有一种方法可以使用onRes

是否有任何方法可以禁止在phantomJs甚至QtWebKit/webkit中加载子帧? 如果有必要的话,我可以大量使用源代码。 我正在做一些web操作,但我不需要iFrame的内容,它只会减慢加载时间

例如,我知道它可以在Mozilla中完成

webSetup->SetProperty(nsIWebBrowserSetup::SETUP_ALLOW_SUBFRAMES,PR_TRUE);
但到目前为止,我在QtWebKit中没有找到任何可以这样做的东西

也许有一种方法可以使用onResourceRequested来阻止对iFrame的请求

这似乎有效:

// load only the main page, no iframes
page.onLoadStarted = function() {
        page.navigationLocked = true;
};
如果需要,可以在页面加载后再次解锁

或者,可以使用此选项阻止加载任何资源:

var req_count = 0;
page.onResourceRequested = function(requestData, networkRequest) {
        if (req_count++ > 0) {
                networkRequest.abort();
        }
}
另见: