1
請考慮下面的代碼在插入之後消失:iframe的內容使用jQuery.append
<html>
<head>
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.js"></script>
</head>
<body>
<div id="dlgDiv" style="width:202px; height:72px; border: solid 1px grey"></div>
<iframe id="iView" style="width: 200px; height:70px; border: dotted 1px red" frameborder="0"></iframe>
<script type="text/javascript">
jQuery(document).ready(function() {
var doc = document.getElementById("iView").contentWindow.document;
doc.designMode = "On"
doc.open()
doc.write("<html><head></head><body class='some-class'>Some test text</body></html>");
doc.close();
jQuery("#iView").appendTo("#dlgDiv")
})
</script>
</body>
</html>
在IE中它工作正常,並在框架(「有些測試文本」)保留測試,以及它保持它在設計模式下。 在FF/Chrome/Opera中,它清除了iframe的所有內容 - 如果您使用FireBug檢查它的DOM,您可以看到iframe.body失去了它的「某些類」類以及所有文本,並且它不處於設計模式。 任何想法如何克服這個問題?原來的問題是,所有富文本編輯器都無法在這些瀏覽器中的jQuery.dialog中工作,並且我將問題追蹤到上述事實...
這對我來說是一個真正的顯示屏,任何幫助都會他高度讚賞!
謝謝 安德烈
抱歉,我不明白你的回答與我的問題有什麼關係。因此-1。 iframe不僅丟失了內容,而且還丟失了designMode值和豐富的文本編輯器呈現不可用 – Andrey 2009-11-19 20:13:09
從我所看到的你不確定的javascript和jQuery中,我將通過修改來添加類。 – 2009-11-19 20:36:38