2012-06-13 2 views
0

CodeMirror를 사용하여 텍스트 상자에서 주어진 단어의 모든 어커런스에 CSS 스타일을 추가하고 있습니다. editor.markText (s, e, "cssClass");CodeMirror 표시를 제거하지 않고 표시된 텍스트를 바꾸는 방법

하지만 동시에 단어를 바꾸고 싶습니다.

나는 시도했다 :

editor.replaceRange ("새로운 단어를"이야, 전자); 하지만 마크도 제거됩니다.

jquery $ (". cssClass")를 사용할 수 있습니다. 텍스트 ("new words");

하지만 오래된 버전의 텍스트가 있으면 내부적으로 CodeMirror가 엉망이 될까봐 걱정됩니다.

아이디어가 있으십니까?

답변

0

아니요, 간단히 DOM을 어지럽히고 새 텍스트를 삽입해도 작동하지 않습니다.

교체 된 것으로 표시된 텍스트에서 마커를 유지하려면 수동으로 코드를 복원해야합니다. 마커는 텍스트에 묶여 있으므로 텍스트가 강제로 삭제되거나 대체되면 마커도 마찬가지입니다.

0

편집 후 마킹/선택하는 방법은 editor.setSelection (s, e); 문제가 해결되는지 확실하지 않은 경우 ...

관련 문제