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