Использование Rangy.js для вставки простого текста без HTML-тегов

Я привязан к поиску и поиску здесь и в Google, но я не нашел никакого решения, чтобы сделать это так просто, используя Rangy.js или нативный JS.

Если у меня есть простой форматированный текст для копирования, как..

<div>
    <b>Copy me (All) : Soufflé chupa chups</b><br>
    <p style="color:#f00;">
        Cotton candy caramels
    </p>
</div>

Как я могу скопировать и вставить обычный текст (без стилизованного текста) в contenteditable элемент?

Я не забочусь о старых IE. Просто текущий Firefox или Chrome должны работать.

Демо: http://jsfiddle.net/72r6J/

2 ответа

Решение

К сожалению, вам понадобится немного хакерское решение. Я описал это здесь:

/questions/31231847/vstavit-tolko-prostoj-tekst-v-redaktiruemyij-div/31231857#31231857

Вот полезный подробный ответ на похожий вопрос разработчика CKEditor:

Вставить как обычный текст Contenteditable div & textarea (word/excel...)

Я не знаю все ваши варианты использования, но что-то вроде этого:

$(document).keyup(function(){
         $(".editor").text($(".editor").text());
    });

Он просто удаляет все html-теги внутри, вы также можете сделать это с другими событиями или с удалением всех атрибутов стиля внутри редактора div.

Другие вопросы по тегам