0

Mindmupの WYSIWYG リッチ テキスト エディターを使用しています

ツールバーにドロップダウン ボックスを追加しました。このドロップダウンを使用して、サーバーからコンテンツを取得し、カーソルが指しているエディターの既存のコンテンツに追加/付加します。

ここに画像の説明を入力

しかし、データをエディターに追加していません。

Insert html at caret in a contenteditable divInsert text at cursor in a content editable div を参照しました

しかし、彼らは私のために働いていません。

これは、ドロップダウンを変更するときにデータを取得するために使用した関数です

function loadJournalTemplate(journalTemplateId) {

$.post('/Journal/GetTemplate', { journalId: journalTemplateId }, 
  function (data, textStatus) {
    if (textStatus == "success") {

        $('#editor1').html(data.content); //Here i need to append/prepend
    }
 }, "json");

} 

現在のカーソル位置に HTML を追加するにはどうすればよいですか?

注: このInsert text at cursor at a content editable divは、エディターをクリックする前にドロップダウンを直接選択すると、ドロップダウン自体にコンテンツを追加します

4

1 に答える 1

1

ツールバーのボタンが編集可能な要素からフォーカスを奪い、選択を破壊しているように聞こえます。ボタン/ドロップダウンがこれを行うのを防ぐか、カーソル位置を保存して復元する必要があります。その場合、選択を破棄する前にツールバー ボタンのクリックを検出する必要があります (おそらく を使用しmousedownます)。

例: contenteditable で選択されたテキストの保存と復元

于 2013-06-02T10:53:58.890 に答える