Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.11.2015, 15:27
Новичок на форуме
Отправить личное сообщение для The_Nobody Посмотреть профиль Найти все сообщения от The_Nobody
 
Регистрация: 17.11.2013
Сообщений: 7

Как сделать обратную операцию в highlight.js или другой подобной библиотеки?
Использую библиотеку highlight.js для подсветки синтаксиса. Есть такой код
<div id="container">
    <h1>Hello World!!</h1>
</div>
<button id="edit">Edit</button>
<button id="done">Done</button>

var container = document.getElementById('container'),
    edit = document.getElementById('edit'),
    done = document.getElementById('done');

edit.addEventListener('click', function () {
    var code = container.innerHTML,
        $pre = document.createElement('pre'),
        $code = document.createElement('code');

    container.setAttribute('contenteditable', true);
    container.removeChild(container.childNodes[1]);
    container.appendChild($pre);
    $pre.appendChild($code);
    $code.innerHTML = code.replace(/<|>/g,function(s){return s==="<"?"&lt;":"&gt;"}).replace( /<(\/?script)>/g ,"&lt;$1&gt;");
    hljs.highlightBlock($code);

}, false);

done.addEventListener('click', function () {
    // ОБРАТНАЯ ОПЕРАЦИЯ
}, false);

При нажатии на кнопку edit я показываю html код с подсветкой, при этом пользователь может этот код редактировать. Проблема в том, что не знаю, как выполнить обратную операцию. То есть, чтоб при нажатии на кнопку done, то что отредактировал пользователь распарсилось и выполнилось, как html. То есть, при редактировании он видел
<h1>Hello World</h1>

А когда нажал done и при этом ничего не поменял в коде, то увидел: Hello World Возможно библиотека highlight.js не умеет делать обратную операция, тогда подскажите пожалуйста, если вы знаете другие подобные библиотеки с подсветкой синтаксиса, которые умеют это делать. Спасибо за помощь и ваше время.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Открытие div блока при первом визите на сайт Nushaba Общие вопросы Javascript 28 20.12.2013 19:24
Вопрос тупой, как сделать обычное по со списком или combobox иначе ? dennnyk Элементы интерфейса 1 07.07.2010 05:59
30(1|2) редирект от сервера. Или как лучше сделать редирект при верной отсылке форма. pizzZ AJAX и COMET 2 18.02.2010 08:06
Как сделать электронный каталог продукции? natarius Серверные языки и технологии 6 24.05.2009 19:56
Переменная от переменной или как к имени переменной конкатенировать значение другой Aderba jQuery 5 12.11.2008 14:25