Ckeditor事件绑定


最近有个需求是要在点击CKeditor的时候触发某个判断的事件。试了一些方法都不可行,自己写的onclick时间都会被编辑器屏蔽。可以对对象加载完成绑定事件代码如下。

CKEDITOR.instances.text.on("instanceReady", function () {  
        //and click event  
        this.document.on("click", check_ckedit);
});

其中check_ckedit 是点击的时候触发的函数名。但调用了 setData方法后,刚才绑定的事件就被清除了。要重新绑定。代码如下。

if('写点什么吧' === CKEDITOR.instances.comment_text.document.getBody().getText().trim()) {
                CKEDITOR.instances.comment_text.setData('', function() {
                    CKEDITOR.instances.comment_text.focus();
                    CKEDITOR.instances.comment_text.document.on("click", check_ckedit);
                });                
            }

setData方法 是个异步的,所以直接写后面添加绑定的话不是每次都成功,甚至是每次都不成功。所以可以利用它的第二个参数。把要处理的事情写到函数中。传递给它。这样就保证了绑定事件是在setData之后的了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM