2010-04-09 2 views
5

Я пишу чат-приложение, и я хотел бы добавить некоторые простые функции, в которых пользователи используют разметку, чтобы повлиять на форматирование текста, например bold или курсивом. Я предполагаю, что это будет похоже на то, как это делается в Google Talk или StackOverflow. У JQuery есть плагины для этого?JQuery/JS Markdown плагин?

ответ

12

stackoverflow использует редактор WMD. Вы можете использовать код редактора WMD. Это написано javascript.

проверка

http://blog.stackoverflow.com/2009/01/wmd-editor-reverse-engineered/

Для ОМП в HTML, вы можете использовать ShowDown javascript.

Github источник (включая showdown.js)

http://github.com/derobins/wmd

Showdown использований

var text = "Markdown *rocks*."; 
var converter = new Attacklab.showdown.converter(); 
var html = converter.makeHtml(text); 
alert(html); 
+0

Stackoverflow теперь использует [PageDown] (https://code.google.com/p/pagedown/wiki/PageDown) (как выделено на [старая страница github для их преобразования WMD] (https: // github. ком/CKY/ОМП)). Вы можете найти короткий (и довольно старый) пример использования [здесь] (http://mathiasbynens.be/notes/showdown-javascript-jquery). – EleventyOne

6

Легко use Showdown with or without jQuery. Вот пример JQuery:

// See http://mathiasbynens.be/notes/showdown-javascript-jquery for a plain JavaScript version as well 
$(function() { 
// When using more than one `textarea` on your page, change the following line to match the one you’re after 
var $textarea = $('textarea'), 
    $preview = $('<div id="preview" />').insertAfter($textarea), 
    converter = new Showdown.converter(); 
$textarea.keyup(function() { 
    $preview.html(converter.makeHtml($textarea.val())); 
}).trigger('keyup'); 
}); 
1

FWIW, я написал JQuery Markdown плагин, который использует преобразователь Showdown. Он предназначен для использования в качестве клиентской утилиты, когда ваш сервер обслуживает документы Markdown, предположительно организованные в какой-либо значимой структуре каталогов.

Ссылки на другие документы и изображения Markdown устраняются в отношении вашего базового каталога документа и структуры каталога документа. Transclusion также поддерживается с помощью меток стиля {{include-this}}, позволяющих создавать метаданные, состоящие из небольших фрагментов Markdown или исходного текста.

Пример использования: $(#mydiv).markdown('mybase/', 'mydir/mydoc.markdown');

Пожалуйста, не стесняйтесь загружать и использовать без ограничений на http://plugins.jquery.com/project/markdown.

Смежные вопросы