如何删除鼠标滚动时显示的 CKEditor 中的边框

How to remove the border in CKEditor shown on mouse scroll

我在使用 CKEditor 时遇到了一个有趣的问题,描述如下:

在 CKEditor 中,我创建标题、iframe 或插入图像。它在标题、iframe 或图片的内容周围创建一个 "BORDER"。

现在,我将鼠标滚轮上下滚出编辑区,"BORDER"仍然出现如下:

如何删除这个 "BORDER"?

请帮帮我。

提前致谢, 武

您看到的是 IE 原生功能。图像、浮动 div 等获得这些调整大小的边框。 IIRC 任何具有 hasLayout 属性 的元素都将获得这些调整大小的句柄。

在 IE 8-10 中,可以使用 - disableObjectResizing 阻止对象大小调整。 不幸的是,IE11 不提供任何解决此问题的句柄。这是 IE11 错误。有一个针对 IE11 的 hack 没有包含在核心代码中 - https://dev.ckeditor.com/ticket/9317#comment:16.

根据用于创建 CKEditor 的方法,此 hack 可以例如如下实现: 如果使用经典编辑器和替换方法 -

    var editor = CKEDITOR.replace( 'editor1', {});  
 editor.on( 'pluginsLoaded', function( evt ){
                editor.on( 'contentDom', function( e ){
                    var editable = editor.editable(),
                        element = editable.$;

                    if ( element.addEventListener ) {
                        // IE up to 10.
                        element.addEventListener( 'mscontrolselect', function( evt ) {
                            evt.preventDefault();
                        } );
                    } else {
                        // IE11 and higher.
                        element.attachEvent( 'oncontrolselect', function( evt ) {
                            evt.returnValue = false;
                        } );
                    }
                });   
            });

如果自动创建经典或内联编辑器 -

CKEDITOR.on( 'instanceCreated', function( event ) {
    var editor = event.editor;  

     editor.on( 'contentDom', function( e ){
                   var editable = editor.editable(),
                        element = editable.$;

                    if ( element.addEventListener ) {
                        // IE up to 10.
                        element.addEventListener( 'mscontrolselect', function( evt ) {
                            evt.preventDefault();
                        } );
                    } else {
                        // IE11 and higher.
                        element.attachEvent( 'oncontrolselect', function( evt ) {
                            evt.returnValue = false;
                        } );
                    }
         });
});   

注意: 请同时查看 https://dev.ckeditor.com/ticket/9317#comment:26。在其他情况下,调整大小可能会被破坏。最好检查一下这个 hack 是否适用于所有人。