HTML-редактор форматированного текста и контент только для чтения?

Я ищу способ сделать определенные элементы в текстовом редакторе HTML доступным только для чтения и не могут быть изменены пользователем. Есть ли способ добиться такого поведения?

Примером редактора форматированного текста, о котором я говорю, может быть этот фрагмент кода:

 <html>
 <head>
  <script type="text/javascript">
   var Editor = {
    Init: function() {
     $("#editor").get()[0].contentWindow.document.designMode = "on";
    }
   }

   $(document).ready(function() { Editor.Init(); });
  </script>
 </head>
 <body>
  <iframe id="editor" style="width: 500px; height: 250px;"></iframe>
 </body>
</html>

/Тобиас


person magix    schedule 19.01.2010    source источник


Ответы (1)


Не знаю, поможет ли это вам, но WYSIWYG-редактор CKEditor может защищать контент с помощью регулярного выражения:

http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html#.protectedSource

CKEDITOR.config.protectedSource Начиная с: 3.0 Список регулярных выражений, которые должны выполняться во входном HTML, с указанием кода, который должен оставаться нетронутым.

config.protectedSource.push( /<\?[\s\S]*?\?>/g );   // PHP Code
config.protectedSource.push( /<%[\s\S]*?%>/g );   // ASP Code
config.protectedSource.push( /(]+>[\s|\S]*?<\/asp:[^\>]+>)|(]+\/>)/gi );   // ASP.Net Code

Я еще не использовал его сам, но из того, что я слышал на форумах и здесь, на SO, он работает вполне прилично.

Тем не менее, я использовал CKEditor и могу порекомендовать его как один из самых лучших доступных WYSIWYG-редакторов, даже если документация и поддержка сообщества немного скудны, он все еще очень новый на рынке.

person Pekka    schedule 19.01.2010