Это должно быть легко (по крайней мере, у кого-то, похоже, нет подобных проблем), но я не вижу, где оно ломается.
Я храню текст Markdown'а в базе данных, которая вводится на странице моего приложения. Текст вводится с использованием ОМП, и предварительный просмотр в реальном времени выглядит правильно.
На другой странице я извлекаю текст уценки и использую Showdown.js, чтобы преобразовать его обратно в HTML-клиент для отображения.
Допустим, у меня есть этот текст:
The quick **brown** fox jumped over the *lazy* dogs.
1. one
1. two
4. three
17. four
Я использую этот фрагмент Javascript в своем событии готовности документа jQuery, чтобы преобразовать его:
var sd = new Attacklab.showdown.converter();
$(".ClassOfThingsIWantConverted").each(function() {
this.innerHTML = sd.makeHtml($(this).html());
}
Я подозреваю, что здесь моя проблема, но она почти работает.
В FireFox я получаю то, что ожидал:
Быстрая коричневая лиса перепрыгнула через ленивых собак.
- один
- два
- три
- четыре
Но в IE (7 и 6) я получаю это:
Быстрая коричневая лиса перепрыгнула через ленивых собак. 1. один 1. два 4. три 17. четыре
Так что, очевидно, IE удаляет разрывы в моем коде уценки и просто конвертирует их в пробелы. Когда я выполняю просмотр исходного кода исходного кода (до запуска скрипта), внутри контейнера DIV возникают разрывы.
Что я делаю не так?
UPDATE
Это вызвано "причудой" IE innerHTML / innerText, и я должен был упомянуть ранее об этом на странице ASP.Net с использованием элементов управления с привязкой к данным - в противном случае, очевидно, существует множество различных обходных путей.