CKeditor自定義右鍵菜單

CKeditor自定義右鍵菜單

一、在CKeditor的plugins目錄中加入自定義的插件

我加入的是自定義的圖片裁剪插件Cropper,目錄結構如下:
在這裏插入圖片描述

二、在CKeditor的配置文件config.js中加入自定義的插件

加入自定義的插件,如果有多個自定義的插件,中間已逗號分割

// 加入自定義的插件
config.extraPlugins = 'cropper';

三、效果圖

此時,在Ckeditor中就會出現自定義的圖片裁剪插件的圖標了
在這裏插入圖片描述
上傳一張圖片,然後在圖片上右鍵,可以看到,此時的右鍵菜單中是沒有我們自定義的圖片裁剪插件的
在這裏插入圖片描述
我們需要在圖片的右鍵菜單中加入自定義的圖片裁剪插件

四、在右鍵菜單中加入自定義的圖片裁剪 插件

在Cropper目錄下的plugin.js中加入以下代碼

CKEDITOR.plugins.add( 'cropper', {
    init: function( editor ) {

      editor.ui.addButton( 'cropper', {
        label: '裁剪圖片',
        command: 'cropper',
        toolbar: 'insert',
        icon: this.path + 'icons/cropper.png' // 在toolbar中的圖標
      });

      editor.addCommand( 'cropper', {
          exec: function( editor ) {
          	// 業務代碼
          }
      });

      // 將圖片裁剪添加到右鍵菜單中
      if(editor.addMenuItem) {

        editor.addMenuGroup("cropper");

        editor.addMenuItem("cropper", {
          label: "圖片處理",
          icon: this.path + 'icons/cropper.png',
          command: "cropper",
          group: "cropper"
        })
      }

      if(editor.contextMenu) {
        // 監聽右鍵菜單事件
        editor.contextMenu.addListener(function(element) {
          // 如果是在圖片上右鍵,纔在右鍵菜單中顯示圖片裁剪功能
          if(element.$.localName == "img") {
            return {
              cropper: CKEDITOR.TRISTATE_OFF
            }
          }
        })
      }
    }
});

此時,在圖片的右鍵菜單中就會加入我們自定義的圖片裁剪插件了
在這裏插入圖片描述
點擊右鍵菜單中的圖片裁剪插件,會出現圖片裁剪的裁剪框
在這裏插入圖片描述

至此,自定義的插件在右鍵菜單中添加成功了!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章