ckeditor 사용자 정의 플러그 인 사용 방법 상세 설명
프로젝트 의 필요 로 인해 ckeditor 의 업로드 기능 을 다시 써 야 합 니 다.다음은 사용자 정의 이미지 업로드 기능 의 일부 코드 입 니 다.
1.ckeditor/plugins/디 렉 터 리 에 새 editor upload 디 렉 터 리 를 만 들 고 사용자 정의 플러그 인 을 저장 합 니 다.이 디 렉 터 리 에 새 디 렉 터 리 images 를 저장 하고 images 디 렉 터 리 에 플러그 인 이미지 image.png 를 넣 습 니 다.
2.editor upload 디 렉 터 리 에 plugin.js 를 새로 만 듭 니 다.
(function () {
var a = {
exec: function (editor) {
// jsp ,
var url = '../view/fileupload/upload.jsp';
openDialog({ //openDialog
title: ' ',
url: url,
height: 600,
width: 900,
callback:function(){
}
});
}
},
b = 'editorupload';
CKEDITOR.plugins.add('editorupload', {
init: function (editor) {
editor.addCommand(b, a);
editor.ui.addButton('editorupload', {
label: ' ', //
icon: 'plugins/editorupload/images/image.png', //
command: b
});
}
});
})();
위 코드 에 upload.jsp 페이지 를 새로 만들어 그림 을 업로드 하고 openDialog 를 사용 하여 새 창 을 팝 업 합 니 다.팝 업 상자 의 높이 와 폭 을 설정 합 니 다.CKEDITOR.plugins.add 는 사용자 정의 editor upload 를 ckeditor 에 추가 합 니 다.
다음은 부분 upload.jsp 페이지 코드 입 니 다.
<div id="mainContent">
</div>
<div class=" box">
<table class=" m-table">
<colgroup>
<col width="20%"/>
<col width="80%"/>
</colgroup>
<tr>
<td style="vertical-align:top;"><label class="module-name"> </label></td>
<td>
<ul>
<li>1、《PC 》 666×250 ;《APP 》 422×262 ;</li>
<li>3、 ;</li>
</ul>
</td>
</tr>
</table>
</div>
<div id="Pictures" class="detailWraper nopadding" style="display: none;height: auto;">
<input id="hidPicturesStatus" type="hidden" value="0"/>
<input id="hidCurrPictures" type="hidden" value=''/>
<input id="hidDictSuggestion" type="hidden" value=''/>
<table>
<tr>
<td>
<div id="fileQueue"></div>
<div id="picWrapper"></div>
<a id="fake-dlg-bigPic" href="javascript:void(0)" style="display: none;"></a>
<div id="dlg-bigPic" class="popImg" style="display: none;">
<a class="leftBtn" href="javascript:void(0)"></a>
<a class="rightBtn" href="javascript:void(0)"></a>
<a class="closeImgBtn" href="javascript:void(0)"></a>
<div class="imgList">
<ul></ul>
</div>
</div>
<div class="validation-summary-valid">
<ul>
<li style="display: none"></li>
</ul>
</div>
</td>
</tr>
</table>
</div>
<div>
<button id="fileUpload"> </button>
<button id="submit" class="btn btn-primary" style="vertical-align: top;line-height:23px;width:112px;height: 35px;">
</button>
</div>
</div>
upload.jps 페이지 부분의 js 코드:
//
photoTaskDetail.submit = function () {
var pictures = window.picManager._getPictures();
if (pictures.length < 1) {
alert(' 1 ');
return false;
}
for (var i in pictures) {
var imgPath = "<img src='" + staticFileRoot + pictures[i].URL + "'/>";
var element = window.parent.CKEDITOR.dom.element.createFromHtml(imgPath);
window.parent.CKEDITOR.instances.editorContent.insertElement(element);
}
parent.closeDialog(false);
}
위의 코드 에 서 는 여러 장의 사진 을 올 려 각각 ckeditor 에 사진 을 넣 을 수 있다.ckeditor 의 config.js 설정:
config.extraPlugins += (config.extraPlugins ? ',editorupload' : 'editorupload');
CKEDITOR.editorConfig = function( config ) {
config.font_names= ' / ; / ; / _GB2312; / _GB2312; / ; / ; / ;'+ config.font_names;
config.language = 'zh-cn';
config.extraPlugins += (config.extraPlugins ? ',lineheight' : 'lineheight');
config.extraPlugins += (config.extraPlugins ? ',editorupload' : 'editorupload');
CKEDITOR.config.lineheight_sizes = CKEDITOR.config.lineheight_sizes + '30px';
config.height = 650;
config.toolbarCanCollapse = true;
config.uiColor = '#90B8E9';
config.toolbar = 'Full';
config.toolbar_Full = [
{ name: 'document', items: [ 'Source','-','Save','NewPage','DocProps','Preview','Print','-','Templates' ] },
{ name: 'clipboard', items: [ 'Cut','Copy','Paste','PasteText','PasteFromWord','-','Undo','Redo' ] },
{ name: 'links', items:['Link','Unlink']},
{ name: 'insert', items:['HorizontalRule','Table','Image'] },
'/',
{ name: 'basicstyles', items: [ 'Bold','Underline','Strike','Subscript','Superscript','-','RemoveFormat'] },
{ name: 'paragraph', items: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
{ name: 'styles',items: ['lineheight','Format','Font','FontSize']},
{ name: 'colors',items: ['TextColor', 'BGColor']},
{ name: 'tools', items : [ 'Maximize','editorupload'] }
];
편집기 upload 플러그 인 을 ckeditor 에 추가 합 니 다.다음은 실 현 된 부분 캡 처 입 니 다.
요약:사용자 정의 플러그 인 과정 에서 원래 플러그 인의 그림 을 삽입 하 는 기능 을 열 어야 합 니 다.업 로드 를 담당 하 는 그림 은 ckeditor 에 넣 지 않 고 그림 주 소 는 자동 으로 걸 러 집 니 다.이것 은 ckeditor 버 전의 bug 로 인 한 것 일 수 있 습 니 다.해결 방안 이 있 는 환영 지도.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Angular 앱에 리치 텍스트 편집기를 추가하는 방법CKEditor 5는 바로 사용할 수 있는 편집기 빌드와 빌드의 기반이 되는 CKEditor 5 프레임워크로 구성됩니다. 현재 Angular용 CKEditor 5 구성 요소는 빌드를 통해서만 CKEditor 5 통합...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.