네이버 에디터를 사용중인데
에디터에 스크립트를 붙여넣기 하는 경우..텍스트를 변경하려고 한다.
일단 네이버 에디터만드는 부분 일부
<script type="text/javascript">
var oEditors = [];
// 추가 글꼴 목록
//var aAdditionalFontSet = [["MS UI Gothic", "MS UI Gothic"], ["Comic Sans MS", "Comic Sans MS"],["TEST","TEST"]];
nhn.husky.EZCreator.createInIFrame({
oAppRef: oEditors,
elPlaceHolder: "ir1",
sSkinURI: "SmartEditor2Skin.html",
htParams : {
bUseToolbar : true, // 툴바 사용 여부 (true:사용/ false:사용하지 않음)
bUseVerticalResizer : true, // 입력창 크기 조절바 사용 여부 (true:사용/ false:사용하지 않음)
bUseModeChanger : true, // 모드 탭(Editor | HTML | TEXT) 사용 여부 (true:사용/ false:사용하지 않음)
//aAdditionalFontList : aAdditionalFontSet, // 추가 글꼴 목록
fOnBeforeUnload : function(){
//alert("완료!");
}
}, //boolean
fOnAppLoad : function(){
//예제 코드
//oEditors.getById["ir1"].exec("PASTE_HTML", ["로딩이 완료된 후에 본문에 삽입되는 text입니다."]);
fn_checkClipboard();//추가한 함수
},
fCreator: "createSEditor2"
});
fn_checkClipboard();를 추가했다.
function fn_checkClipboard(){
var target_se2 = document.querySelector("iframe").contentWindow.document.querySelector("iframe").contentWindow.document.querySelector(".se2_inputarea");
target_se2.addEventListener("paste",function(e){
//기존 입력값 tempContent
var tempContent = this.innerHTML;
//초기 입력값 checkData
var checkData = (event.clipboardData || window.clipboardData).getData('text');
checkData = checkData.replace(/mouseover/gi,'');
checkData = checkData.replace(/onerror/gi,'');
// replace로 바꿀 내용들 작성 //
//setData 가..클립보드에 내용 넣는 거라고 봤는데 실제 에디터에 입력되는 내용과
//붙여넣기할 데이터를 보면 변경되지 않았다
event.clipboardData.setData('text/plain',checkData);
//붙여넣기할 데이터 변경되었는지 한번 더 확인
var test = event.clipboardData.getData('text');
//에디터에 원하는대로 들어가지 않음..
oEditors.getById["contents"].exec("PASTE_HTML", [tempContent+checkData]);
});
}
붙여넣기 할 내용은 변경되지만
실제로 입력되는 값은 변경 전의 데이터이다.
어디서 봤는지는 모르겠는데
paste함수를 타자마자 함수실행을 멈추고 작업을 하던데............어디서 봤나 기억도 안나고..허허..
그래서 생각한게.. 붙여넣기 할 내용에
alert같은 데이터가 있으면
alert("입력 불가한 문자가 있습니다."); 이건 문구 띄우고
붙여넣기를 중지 시킬 수는 없을까?
[Javascript] Naver SmartEditor 사용 및 입력 글자 수 표시하기
스마트 에디터에 내용 초기화 및 내용 넣기(태그 제거없이) : 네이버 블로그
코딩노트 :: 네이버 웹 스마트에디터 2.9.0 취약사항(디폴트 값)
붙여 넣기 이벤트시 JavaScript에서 클립 보드 데이터 가져 오기 (크로스 브라우저) 감지하고 붙여 넣을 - How IT
https://from2020.tistory.com/39
반응형
'차근차근 > JAVA Script' 카테고리의 다른 글
동적 셀렉트 박스 추가 삭제 (0) | 2022.09.19 |
---|---|
input type file.. 여러 건 업로드 (2) | 2022.09.16 |
이미지 첨부파일 다운로드 시 유효성 체크하기 (0) | 2022.07.07 |
viewport remove (0) | 2022.05.06 |
sort() (0) | 2022.04.07 |