2013-09-05 2 views
0

Я работаю над страницей, на которой будет отображаться содержимое поля базы данных. Содержимое в формате HTML и включает в себя все веб-страницыЗамена источника HTML документа iframe

<html> 
    <title>Some title</title> 
    <style type="text/css"> 
    /* CSS content here */ 
    </style> 
    <body> 
    <!-- body content here --> 
    </body> 
</html> 

Мне нужно, чтобы отобразить все это в другой веб-страницы, так что я думал, с помощью IFRAME позволит мне свести на нет все CSS от родительской страницы. Однако я не могу понять, как перезаписать содержимое документа iframe.

Что я сделал до сих пор является извлечение данных, а затем использовать следующие

$("#iframe_constainer") 
    .find('iframe:first').contents().find('html:first').html(myHTML); 

Моя веб-страница содержит Div под названием iframe_container, который содержит IFRAME.

<div id="iframe_container"><iframe/></div> 

Это работает хорошо, но содержание myHTML становятся завернуты внутри html тегов. Таким образом, эффект, как этот

<html> 
    <html> 
    <title>Some title</title> 
    <style type="text/css"> 
     /* CSS content here */ 
    </style> 
    <body> 
     <!-- body content here --> 
    </body> 
    </html> 
</html> 

Я знаю, что это потому, что я нахожу, что HTML-тег в IFRAME и изменения HTML. Есть ли способ переписать весь документ с помощью jQuery?

ответ

0

Вам не нужен jQuery для этого, просто используйте document.write для записи содержимого в iframe, чтобы полностью заменить документ iframe.

E.g. (в обычном ванили JS)

document.getElementById("myIframeId").contentWindow.document.write(myHTML); 
+1

Это не заменяет, а вместо этого добавляет к документу iframe – Kurren

Смежные вопросы