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