CK에디터 모바일에서 엔터 문제 도와주세요. 글등록 후 현상
이것 저것 해 보다가 우연히 검색에서
if(isMyMobile==true)
{
CKEDITOR.editorConfig = function( config ) {
config.enterMode = CKEDITOR.ENTER_BR;
};
}
위와 같은 것을 발견했습니다. 그런데 이렇게 하니 모바일에서 엔터를 치면 br로 됩니다. 그런데 문제는 엔터를 치면 의도는 줄만 바꾸는 것인데 한칸이 벌어지고 한칸을 띄우려고 하면 2칸이 띄워 집니다.
다른 해결책이 있을까요.... 이게 해결 되어야 모바일에 CK에디터를 적용해 보는데 지금 삽질하고 있습니ㅏ.
<p>모바일 줄바꿈<br />
<br />
처리가 어려워서<br />
<br />
<br />
<br />
적용하는게 어려워요<br />
<br />
</p>
<br />
처리가 어려워서<br />
<br />
<br />
<br />
적용하는게 어려워요<br />
<br />
</p>
처음에는 엔터를 한번 친거구요.
그다음 엔터 두번
그다음 엔터 한번 입니다.
댓글 34
오! config.fillEmptyBlocks = false;이거로 되는듯 합니다.
아닌듯.. 합니다. 등록을 하고 나면 2칸씩 간격이 벌어지네요.. ㅡㅡ;
모바일에서 작성한 글에는 nl2br 이 적용됩니다.
뭐 제가 할 수없다는 건가요? 모바일에 적용을 하신분들 계서서 저도 CK에디터의 사용성을 저희 사이트에서 모바일에서 확인해 보고 싶습니다.
의뢰를 해서 해결을 하라는 말씀 이신가요?
도움 주셔서 감사합니다.
플랫모바일이구요.
비밀댓글 체크가 없어 공개 댓글로 작성합니다. 파일 첨부했어요. 해결되면 지울게요.
1. onsubmit="return procFilter(this, insert)" 이벤트를 삭제합니다.
2. 텍스트 에어리어를
<input type="hidden" name="use_html" value="Y" />
<input type="hidden" name="use_editor" value="Y" />
<div class="write_editor">
{$oDocument->getEditor()}
</div>
로 변경
3. 전송시 onsubmit 이벤트 추가
/* 줄 바꿈에 br 태그를 넣어버리는 XE Core 회피를 위해서 line-break를 모두 지움 */
jQuery(window).load(function($){
jQuery("#ff").submit(function( event ) {
var contents = jQuery("[name='content']",this).val().replace(/(\r\n|\n|\r)/gm,'');
jQuery("[name='content']",this).val(contents);
var params = [], data = jQuery(this).serializeArray();
jQuery.each(data, function(i, field) {
var v = jQuery.trim(field.value), n = field.name;
if(!v || !n) return true;
if(/\[\]$/.test(n)) n = n.replace(/\[\]$/, '');
if(params[n]) {
params[n] += '|@|'+v;
} else {
params[n] = field.value;
}
});
var response_tags = ['error','message','mid','document_srl','category_srl'];
exec_xml('board', 'procBoardInsertDocument', params, function(a) { completeDocumentInserted(a); }, response_tags, params);
return false;
});
});
</script>
결과는 첨부파일(write_form.zip )을 참고하세요. (edit.js는 글 수정시에만 적용되기 때문에 적절한 파일이 아닌 것 같아서 HTML 파일에 직접 스크립트를 넣었습니다.
글자
글자
글자
이런식이요.
글자
글자 면 글자와 글자 사이에 엔터가 입력 된 것 같은데 아닌가요???
글자
글자 가 되어야 하는건가요???
혹시 사용하신 휴대폰 OS(버전까진 모르시더라도 안드로이드인지 아이폰인지), 브라우저 종류(아이폰 기본 사파리/안드로이드 기본 브라우저/안드로이드 크롬/파이어폭스 등등)을 알려주실 수 있나요?
에디터에서 엔터를 <p> 가 아닌 <br> 로 인식하도록 변경하는 것 까지 하셔야 할 것 같아요
아래 코드를 넣어보세요.
그리고 저장합니다.
CKEDITOR.editorConfig = function (config)
{
config.enterMode = CKEDITOR.ENTER_BR;
};
감사합니다. 위 답변보고 적용할때 또 댓글까지 달아주셨네요. br로 바꾸니 줄바꿈이 잘 됩니다.
감사합니다. 이 상태로 모바일에서 사용가능 할 것 같습니다.
진심으로 감사드립니다. 후원계좌라도 열어주시면 나중에 감사표시를 드리겠습니다.
<br> 로 줄바꿈을 하게되면, 일단은 해결될 것이기 때문에 권해드렸습니다. 아마 CKEditor 속성이기 때문에 별 문제는 없을거에요.
아.. 알았어요. http://pomelove.com/xe/free/699643 에서 보여주신 문제인데..
<p></p> 로 <p> 안에 아무 내용이 없을 경우에 p 에 마진(CSS margin 속성)이 전혀 없고 안에 내용도 없기 때문에 발생하는 문제입니다.
에디터는 정확하게 <p></p> 를 넣고 있어요.
<p> </p>
<p> </p>
<p>한번</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>두번</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>세번</p>
<p> </p>
<p> </p>
이건 BR을 설정에서 빼면 이렇게 되는 듯 합니다.
혹시 해결 하셨나요 ? 전 처음에는 안나오는데 수정하고 저장할때마다 추가로 p태그가 계속 추가되네요 ㅎㅎ;;
위의 팁을보고 수정했습니다 ^^ 혹시 몰라 남겨놓습니다 ~