[英]How to clone actual iFrame contents, not just the iFrame tag contents?
我有一個iFrame,並且已經解決了如何使用jQuery克隆它的方法:
<HTML>
<HEAD>
<SCRIPT type="text/javascript" src="jquery.js"></SCRIPT>
<SCRIPT>
function clone_test() {
$('#FRAME1').clone().appendTo('#divtag');
}
</SCRIPT>
</HEAD>
<DIV id="divtag">
<iframe id="FRAME1" name="FRAME1" src="http://currencies.typeit.org/" width="360" height="360" frameborder="0"></iframe>
</DIV>
<a href="javascript:clone_test()" target="FRAME1">- CLONE THE iFRAME -</a>
</HTML>
但這不是我想要的! 我的問題是,在克隆過程中不包括在貨幣框中鍵入的任何內容。 似乎僅克隆了HTML,而不克隆了iFrame的實際內容。 無論如何,是否可以克隆iFrame(包括在貨幣框中鍵入的任何內容)? 這僅適用於Chrome瀏覽器,因為我正在制作Chrome擴展程序。
如果Iframe來自其他域,則由於“相同來源策略”,您將無法訪問其內容。
我認為這是不可能的,您的代碼只是復制了iframe元素,它再次加載了外部頁面,處於“默認”狀態。 但是您無法訪問iframe的內容。
如果iframe的網址和您的域的網址不同,則無法完成此操作。
如果它們相同,則還需要克隆iframe的document元素並將其附加到克隆的iframe中。
但是,有一種解決方法。 由於同源政策的緣故,您需要使用curl(如果使用的是php)來“偽造”內容來自同一域。 之后,您也許可以通過使用獲得iframe的內容。
$(“#frameid”)。contents()。find(“ body *”);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.