我正在爲使用VS2008的Firefox 3.0-3.5版本開發擴展。使用C++在nsIWebProgressListener :: OnStateChange中訪問Firefox選項卡元素
我想設置屬性到一個標籤,一旦文件加載請求在該標籤窗口內完成。
所以在OnStateChange方法中,我正在檢查文檔加載。 我已經使用了STATE_STOP & STATE_IS_DOCUMENT。
我想確定哪個選項卡窗口與特定的文檔請求相關聯。
我有有效的DOM從nsIWebProgress獲取的文檔指針* aWebProgress是第一個輸入 OnStateChange的參數。
if ((aStateFlags & STATE_STOP) && (aStateFlags & STATE_IS_DOCUMENT))
{
nsCOMPtr<nsIDOMWindow> domwin;
nsCOMPtr<nsIDOMDocument> domDoc;
aWebProgress->GetDOMWindow(getter_AddRefs(domwin));
domwin->GetDocument(getter_AddRefs(domDoc));
}
我試圖通過QIing nsIDOMDocument指針(在我的例子domDoc)獲得nsIDOMDocumentXBL指針,但它失敗,錯誤代碼0x80004002(2147500034)i.e.NS_ERROR_NO_INTERFACE。
如何獲取與文檔加載請求相對應的選項卡元素。
任何人都可以幫我嗎?
在此先感謝, Vaibhav D. Gade。
肯定會去的JS是這裏的方式。你會節省很多頭痛。 – CAFxX 2011-01-10 17:25:05