2009-05-31 58 views
0

我正在將頁面加載到IFRAME中,並且我想知道下載是否不完整,並且HTML格式不正確,並且缺少結束標記,如</body></html>檢測IFRAME的文檔是否格式錯誤

有沒有什麼辦法可以在JavaScript中檢測到這個?

+2

對於正文和html元素缺少結束標記的HTML文檔沒有格式錯誤 - 它們在規範中定義爲可選。 – Quentin 2009-05-31 14:43:21

+0

好點,雖然這在實踐中很少見。 – 2009-06-01 11:29:07

回答

2

我不知道,如果你可以測試HTML格式不正確或不知道到底什麼樣的期待和專門測試它缺少的元素。

如果您有權訪問iframe頁面的源代碼,您可以在綁定到父窗口的</body>結束之前調用javascript函數變量; (或使用window.onLoad()事件來觸發該調用。)

在您的容器頁面中定義此方法。

window.iAmLoaded = function() { 
    alert('iframe loaded OK'); 
}; 

然後從iframe中調用它;

<script type="text/javascript" charset="utf-8">  
     window.parent.iAmLoaded();  
    </script> 
</body> 

如果這不是一個選項,並在iframe具有相當著名的DOM,或者獨特的元素靠近頁面末尾,您可以使用的getElementById或您喜愛的圖書館的CSS選擇器的方法來定位元素。

-3

您可以使用iframe的onLoad事件來告知其何時完成加載。 http://www.w3schools.com/jsref/jsref_onload.asp

用於檢測格式錯誤的html:您正在尋找驗證器。瀏覽器不這樣做,除了xhtml strict。有可能是js驗證軟件。

拉里