我们在Internet Explorer 9和10中发现了可编辑iframe的问题(它可能也出现在其他版本中,但到目前为止还无法确认)。
如果您创建一个设计为on的简单iframe,请键入几个单词,然后粘贴一些复杂的内容(在此示例中,包含直接来自Outlook的签名的电子邮件或来自MS Word的格式化文档),然后在修改原始内容时,键入的字符变为不可见,直到按下空格或从iframe中丢失焦点。
对于该行为更奇怪的是,如果用户在>>粘贴其内容之前按下返回,则问题不会发生。此外,在内容可编辑DIV中执行相同的步骤不会导致相同的问题(但是,将可编辑的DIV放在不可编辑的iframe 确实会导致问题,因此iframe肯定会出现是问题)。
Google Chrome或Mozilla Firefox中不会出现此问题,唯一的解决方法似乎是确保初始内容与粘贴内容之间存在换行符。
我还注意到,通过确保iframe滚动,可以轻松地复制行为非常。以下代码将复制:
<iframe id="theframe" style="height:50px;"></iframe>
<script>
$(function() {
var iframe = document.getElementById('theframe');
iframe.contentDocument.designMode = 'on';
});
</script>
我还在http://jsfiddle.net/z76x7gzL/设置了一个小提琴,可以可靠地复制问题。
在小提琴中,如果你键入&#34;这是一个测试&#34;然后是一个空格,然后从Word粘贴至少2行,然后回到&#34;这是一个测试&#34;线和尝试输入,文本将是不可见的。
任何帮助非常感谢,