我有以下頁面編碼:如何找到Iframe頁面的渲染內容?
的mypage.html:
<html><script>var a=document.createElement('p');
a.innerHTML="hello world";
document.body.appendChild(a);</script>
<body>
<p>testing 1 2 3....</p></body>
</html>
當我拉與已經下面的代碼find.html的信息。
<script>
window.onload =finder();
function finder(){
var iframe=document.createElement('iframe');
iframe.width=1;
iframe.height=1;
iframe.src='mypage.html';
iframe.setAttribute('id', 'iframer');
document.body.appendChild(iframe);
setTimeout(
function() {
var e = document.getElementById("iframer");
var frameHTML = e.contentDocument; var serializer = new XMLSerializer(); var content = serializer.serializeToString(frameHTML); alert(content);
} , 30000);
}
</script>
最終的結果是顯示在警報彈出:
<html><script>var a=document.createElement('p');
a.innerHTML="hello world";
document.body.appendChild(a);</script>
<body>
<p>testing 1 2 3....</p></body>
</html>
這不是我所期待的。我希望得到內容如下已經呈現在瀏覽器中,我需要得到所有的渲染和生成的唯一檢驗動態的源代碼,我怎麼能代碼來獲取呈現的HTML源代碼:
<body>
<p>hello world</p>
<p>testing 1 2 3....</p>
</body>
我給ID和屬性: 'IFRAME .setAttribute('id','iframer');' – user1541283 2012-07-24 04:07:32
你的第一個代碼在Chrome中完全不起作用。 'Uncaught TypeError:無法讀取未定義的屬性'文檔'而第二個代碼在Chrome中也不起作用。'無類型錯誤:無法讀取未定義的屬性'nodeName'呃,我只需要呈現代碼,我不需要真的需要JavaScript函數的實際源代碼。我需要的只是所有呈現的代碼以供檢查。 – user1541283 2012-07-24 04:10:59
@ user1541283編輯答案。現在試試。 – 2012-07-24 13:13:19