2016-11-30 6 views
2

상황 :

TinyMCE에이 요소가 아닌 편집 할 수있는 noneditable 플러그인을 가지고있다. 요소가 mceNonEditable 클래스 인 경우 TinyMce는 요소를 편집 할 수 없도록 만듭니다.TinyMCE에 비 편집 가능한 요소에 기본 스타일을 적용

문제 :

나는 기본 스타일 태그이 편집이 불가능한 요소를 래핑 할 수 있도록하려는

. 예를 들어

내가있는 경우 :

Hello <span class="mceNonEditable">user_name</span> how are you today ? 

나는 비 편집 가능한 범위를 선택하고 TinyMCE에 Blod 버튼 클릭 user_name을 클릭합니다.

enter image description here

나는 결과가되고 싶습니다 :하지만 그 대신이의

Hello <b><span class="mceNonEditable">user_name</span></b> how are you today ? 

을 아무 일도 발생하지 않습니다. TinyMce Blod 버튼을 클릭하면 코드가 변경되지 않습니다.

나는 이것을 보여주기 위해 작은 jsFiddle을 만들어 : https://jsfiddle.net/timotheejeannin/2hhpenm5/

내가 시도하는 것 :

난 정말 당신이 도와 수 있기를 바랍니다!

답변

0

TinyMCE 구성에 추가 할 수있는 간단한 사용자 지정 도구 모음 단추를 사용하여이 작업을 수행 할 수 있다고 생각합니다.

편집 할 수없는 요소를 클릭하면 효과적으로 편집 할 수없는 전체 요소 인 DOM 노드가 생깁니다. 그런 다음 DOM 조작을 사용하여 해당 요소에 스타일을 추가하거나 다른 태그에 요소를 래핑 할 수 있습니다. 예를 들어이 TinyMCE에 바이올린을 참조하십시오

http://fiddle.tinymce.com/sDfaab

이 때 편집 할 요소를 클릭하고 전체 편집 할 요소는 텍스트를 bolds 새로운 인라인 스타일을 얻을 수 있습니다됩니다 Add Style to Node 버튼을 클릭합니다.

+0

예, 그렇다고해서 TinyMce의 모든 스타일링 기능을 다시 코딩해야합니다. 그것은 아마도 엄청난 양의 작업 일 것입니다 ... –

+0

TinyMCE가 편집 할 수 없도록 무언가가 "편집 할 수 없다"는 것은 그것이 의미하는 것입니다. 편집 할 수 없습니다. "대부분"편집 할 수없는 것을 원한다면 그렇게하기 위해 코딩을해야 할 것입니다.편집 할 수없는 일은 커버 아래에있는 'contenteditable'과 브라우저가 그 속성을 해석하는 방법에 의존하기 때문에 기본 동작은 브라우저가'contenteditable = "false"'를 어떻게 처리하는지에 상당히 달려있다. –

+0

네, 맞습니다. 그것들은'편집 불가능'에 의해'content + style' 또는'content'를 의미하는지에 달려 있습니다. ok'을 ' ok으로 변경하면 문제가 발생합니다. 요소를 전혀 건드리지 않았습니다. 나에게 유효한 유스 케이스 ... –