Ckeditor注册事件

这段时间使用js+cookies进行自动草稿保存,我的觉的,这些全在客户端处理比较的好,因此没有使用AJAX+数据库的自动草稿保存方法。javascript

结果出现Ckeditor没法绑定onkeyup,onselect,onclick事件的问题,查看了Ckeditor的API,发现以下说明:html

 

  1. instanceReady.ckeditor: fired when the editor is created, but before any callback being passed to the ckeditor() method.   
  2. setData.ckeditor: fired when data is set into the editor.   
  3. getData.ckeditor: fired when data is fetched from the editor. The current editor data is also passed in the arguments.   
  4. destroy.ckeditor: fired when the editor gets destroyed. It can be used, for example, to execute some cleanup on the page.   


估计是使用instanceReady,而后在网上查找了一翻,要找这东西的事件绑定,真难。找了N久,找到一个Ckeditor二次开发的例子,通过修改,终于成功。下面是绑定方法。java

 

首先是文本编辑器的绑定:数据库

 

  1. <textarea name="Content" rows="10" cols="20" id="Content"></textarea>  
  2.   <script type="text/javascript">  
  3.   var editor = CKEDITOR.replace('Content', {  
  4.   language: 'zh-cn', //简体中文    
  5.   width: 739,  
  6.   height: 125,  
  7.   toolbar: 'DJArticle'//工具栏的名称  
  8.   });    
  9.   </script>  


这样,编辑器就出现了。而后是绑定onkeyup,onselect,onclick事件。cookie

 

  1. <script type="text/javascript">  
  2.   
  3.     CKEDITOR.instances["Content"].on("instanceReady", function () {  
  4.         //set keyup event  
  5.         this.document.on("keyup", AutoSave);  
  6.         //and click event  
  7.         this.document.on("click", AutoSave);  
  8.         //and select event  
  9.         this.document.on("select", AutoSave);  
  10.     });  
  11.   
  12.   
  13.     function AutoSave() {//相应的操做过程,能够按下面写,也能够按通常javascript过程写。  
  14.         CKEDITOR.tools.setTimeout(function () {  
  15.             alert("10101010");  
  16.         }, 0);  
  17.     }     
  18.   
  19.             </script>  


至此,绑定完成!编辑器

相关文章
相关标签/搜索