2013-07-24 154 views
0

我知道這個問題已經在這個網站上多次提出,但似乎我找到的答案沒有奏效。所以基本上在父文檔中,我有一個iframe,它指向同一個域中名爲external.html的文檔。在external.html文件中,head部分的script標籤中定義了一些變量。我想要做的是在父文檔中訪問這些變量。以下是我使用的代碼:在父文檔中訪問iframe元素

$('#iframe-id').load(function(){ 
    var e = document.getElementById('iframe-id').contentWindow.e; 
}); 

但是,它不能可靠地工作。如果我在該陳述之後做了警告(e),有時它會顯示未定義,但有時會顯示正確的值。我的解釋是,當iframe中的腳本尚未完成執行時調用加載函數。換句話說,它取決於兩個腳本(父節點和iframe中的腳本)的執行時間。添加超時聲明不是我的選擇。即使當iframe完全呈現時,是否有一種可靠的方法來啓動,包括HTML部分和修改HTML元素的腳本?

回答