关于iframe中元素的CKEditor内联编辑器

时间:2013-10-17 00:02:11

标签: javascript html iframe ckeditor

在应用程序中,我在iframe中包含内容可编辑元素,并希望将内联CKEditor应用于这些元素。它的工作原理除非我滚动iframe时CKEditor工具栏不滚动它。是否有特殊标志或某种方式让工具栏使用iframe内容而不是父窗口滚动?另外,我想避免将CKEditor脚本添加到iframe中。

1 个答案:

答案 0 :(得分:1)

您可以通过使用与iframe大小相同且具有相对定位的容器元素包装iframe来实现此目的。

<div id="iframe-wrapper">
    <iframe>
        <body>
            <div contenteditable></div>
        </body>
    </iframe>
</div>

然后将每个ckeditor面板的位置移动到该容器元素中,绝对定位值将起作用。

var el = $('iframe').contents().find('[contenteditable]');
el.ckeditor();
el.ckeditorGet().on('instanceReady', function(){
    $('body > .cke_float').appendTo('#iframe-wrapper');
});