3

HTMLテンプレートファイルを作成しました。そのテンプレート内に編集できない要素をいくつか入れました。

template.html が含まれています

<body>
<div>This is a sample template </div>
<div contenteditable="false" style="color:red">Read Only Text</div>
</body>

このテンプレート ファイルをテキストエリアに挿入すると、2 番目の div が編集可能になります。その div を調べていると、属性contenteditable="false"が挿入時に存在しないことがわかりましたが、テンプレートの挿入前のプレビューには存在します。

どんな助けもありがたく受け取った!

4

1 に答える 1

2

このページから: http://www.tinymce.com/tryit/noneditable_content.php

テキストエリアを使用しています:

  <textarea name="content" style="width:100%">
    &lt;p&gt;Text with a &lt;span class="mceNonEditable"&gt;[non editable]&lt;/span&gt; inline element.&lt;/p&gt;
    &lt;p class="mceNonEditable"&gt;Noneditable text block with &lt;span class="mceEditable"&gt;[editable]&lt;/span&gt; items within.&lt;/p&gt;
    &lt;p&gt;Text with tokens that isn't [[editable]] since they match the noneditabe_regexp.&lt;/p&gt;
  </textarea>

ここで重要なのは、要素に mceNonEditable のクラスを配置することです。

span class="mceNonEditable"

次に、編集できないコンテンツが何であれ、それを大なり小なりでラップします。

&gt;You cannot edit me&lt;

次に、最後に要素を閉じます。

/span

tinymce を初期化するときに、モードを変更することもできると思います (この例では、テキストエリアを使用しているため、div またはスパンも使用できると思います)。

tinyMCE.init({
        mode : "textareas",
        noneditable_regexp: /\[\[[^\]]+\]\]/g
});

編集不可能なコンテンツの正規表現を指定できる noneditable_regexp もあります。これは、html エンティティを使用するよりも簡単だと思います。

実際に試したことはありませんが、ページの例を解釈する方法です。

于 2012-11-14T06:16:12.120 に答える