您好,登錄后才能下訂單哦!
怎么將服務端圖片插入到CKEditor中?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
第一、定義插件
1.在ckeditor\plugins文件夾下,新建serverimg文件夾,
2.在serverimg下新建plugin.js 文件,
CKEDITOR.plugins.add( "serverimg", { requires: ["dialog"], lang: ["en"], init: function (editor) { editor.addCommand("serverimg", new CKEDITOR.dialogCommand("serverimg")); editor.ui.addButton( "serverimg", { label: "插入服務端圖片", command: "serverimg", icon: this.path + "images/pic.png", toolbar: 'insert' }); CKEDITOR.dialog.add("serverimg", this.path + "dialogs/code.js"); } } );
3.在serverimg下新建image,里面存放圖標使用的圖片pic.png
第二、定義插件中的對話框內容
1.在serverimg中新建dialogs文件夾,
2.在dialogs文件內,分別創建code.js (用于執行彈出對話框執行的js代碼)和PicPreview.html(用于瀏覽服務器圖片)
3.code.js 代碼如下
CKEDITOR.dialog.add( "serverimg", function (editor) { var timestamp = Math.round(new Date().getTime() / 1000); var ckeditorPage = '../../ImgMgr/ImgBrowser.aspx?from=ckeditor×tamp=' + timestamp; return { title: "插入代碼", minWidth: 800, minHeight: 600, contents: [ { id: "tab1", label: "", title: "", expand: true, padding: 0, elements: [ { type: "html", html: "<iframe id='img_browser'name='img_browser' src='" + ckeditorPage + "'></iframe>", style: "width:100%;height:600px;padding:0;"// style='width:800px;height:600px' } ] } ], onOk: function () { //插入富文本編輯器內容 window.frames["img_browser"].document.getElementById("hf_imgsrc");// var hf = document.getElementById('img_browser').contentWindow.document.getElementById("hf_imgsrc"); if (hf != null) { var imgSrc = hf.value; editor.insertHtml("<img src='" + imgSrc + "' />"); //將select插入編輯器 } else { alert("hf is null"); } }, //onHide: function () { document.getElementById('img_browser').contentDocument.location.reload(); }, //resizable: CKEDITOR.DIALOG_RESIZE_HEIGHT }; } );
4.說明,由于我在彈出的對話框中插入的是一個iframe,src正好是我自己做的一個瀏覽服務器圖片的頁面,當選中圖片后,點擊對話框中的確定按鈕,即可獲取圖片路徑,
最終包裝成img ,插入到富文本編輯器里面 ,當然你可以做的更好,允許圖片設置寬度和高度,這里就不在講了。
第三、配置插件
上面的插件開發完成后,頁面上并不會顯示我們開發的插件,還需要配置下config.js,找到ckeditor文件下的config.js 打開,在配置里面增加config.extraPlugins = 'serverimg';
看完上述內容,你們掌握怎么將服務端圖片插入到CKEditor中的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。