javascript - 获取ckeditor元素的高度

标签 javascript ckeditor

我在页面上有 CKEditor。每当用户通过拖动编辑器更改高度时,我想知道新的高度,以便保存它。

使用 CKEDITOR.config.height 我可以获得配置的 高度,但我想要当前 高度。

我也尝试过使用 jQuery 中的 height(),但这只会给我通过 CSS 设置的高度——如果没有设置高度,它会给我“43”。

我愿意

  • 获取 CKEditor 文本区域的当前高度(减去菜单,但我可以自己计算)
  • 每当高度改变时让 CKEditor 触发一些东西

原因是,我想将此信息与内容一起保存,以便调整将在其中正确显示的 iframe 的大小。

最佳答案

  1. 要获取当前高度,您可以使用:

    editor.ui.space( 'contents' ).getStyle( 'height' ); // e.g. 200px
    

    这会找到名为 contents 的 UI 空间,这是一个放置可编辑 iframe 的元素。当您通过 editor#resize() 设置编辑器的高度时此大小的方法直接在内容 UI 空间上设置。

  2. 您可以收听 editor#resize当编辑器的大小改变时执行一些代码的事件:

    editor.on( 'resize', function() {
        console.log( 'resized...' );
    } );
    

附言。此答案对 CKEditor 4.0 有效。它可能不适用于 CKEditor 3.6.x

关于javascript - 获取ckeditor元素的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14090733/

相关文章:

javascript - CKEditor:以小部件作为第一个元素,选择所有在 Chrome 中不起作用的内容

javascript - CKeditor:如何在保存时平衡 HTML 标签? (它们平衡负载)

javascript - CKEditor 自动插入\n

javascript - 需要通过javascript与浏览器通信的java applet的替代方案

javascript - 从特定点在 html 上运行视频

javascript - 正则表达式添加不可见的点字符替换\b

javascript - 如何在react-native中编写异步存储值返回函数

javascript - 组织 promise 代码

jquery - 在ajax内容中加载ckeditor

CKeditor Html 5 <figure> 标签问题