[英]In XUL, how do I know a browser-tag has finished loading?
我正在基於本教程開發一個Firefox 2.0擴展的firefox擴展( 本教程的第二部分在此url )
最重要的是它使用
<iframe id="contentview" src="http://www.ibm.com/developerworks/web" flex="2"/>
在后端代碼中,單擊“執行”按鈕時,會發生以下情況:
contentview.contentDocument.location.href = urlbox.value;
//Use Firefox XPath to get the raw text of the document
var doctext = contentview.contentDocument.evaluate(
"string(.)", document, null, XPathResult.STRING_TYPE, null).stringValue;
xpath出現錯誤,但這不是我的問題。 我對FF 3.0的問題是contentDocument值是指加載的舊站點,而不是href-change加載的站點。
所以我的問題是:我如何創建一個類似的窗口,但是在加載的文檔完成后會收到通知,以便我可以訪問其DOM?
更新:首先需要處理窗口的加載事件,然后將事件偵聽器添加到iframe元素
window.addEventListener("load",Listen,false);
function Listen()
{
var frame = document.getElementById("contentview");
frame.addEventListener("DOMContentLoaded", DomLoadedEventHandler, true);
}
function DomLoadedEventHandler() {
var frame = document.getElementById("contentview");
alert(frame.contentDocument.location.href);
}
用事件處理程序名稱替換“ DomLoadedEventHandler”。
我建議您看一下Mozilla的官方網站,以了解有關Firefox擴展的所有信息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.