Уценка в браузере через вскрытие
Мне интересно, могу ли я создать свой новый сайт в уценке, а не в HTML. showdown.js на https://github.com/coreyti/showdown кажется, плагин, который может сделать это.
Я думаю что-то вроде
<html>
<head>
<script type="text/javascript" src="/js/showdown-starter.js" />
<link rel="StyleSheet" href="mystylesheet.css" type="text/css" />
</head>
<body>
# Welcome
Hello. Welcome to my website.
</body>
</html>
Предположительно, клиентский javascript преобразует это в html, который нравится браузеру.
2 ответа
Решение
Что вы можете.
Вот пример того, как:
<div id="content">
# Welcome
Hello. Welcome to my **website**.
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/showdown/1.4.0/showdown.min.js"></script>
<script>
var conv = new showdown.Converter();
var txt = document.getElementById('content').innerHTML;
console.log(txt);
document.getElementById('content').innerHTML = conv.makeHtml(txt);
</script>
Я могу ошибаться, но вам лучше выполнить преобразование markdown-html на стороне сервера, а не на стороне клиента. Это дало бы правильный html пользователям, у которых не включен javascript, и это могло бы облегчить роботам поисковой системы переходить по вашим ссылкам, ссылаться на ваши изображения и т.д....
Если бы вы использовали PHP-порт Markdown, чтобы сделать эту работу, ваш пример будет выглядеть так:
<body>
<?php
include("Markdown.php");
$text = <<<EOD
# Welcome
Hello. Welcome to my website.
EOD;
echo Markdown($text);
?>
</body>