我正在为Web应用程序创建我的降价编辑器。更好的比喻可以是Stack Overflow/RedNotebook,当我们将内容输入到文本框中时,立即格式化的输出会显示在它旁边。如何创建降价编辑器
这样的模型是否有任何示例实现?或者我应该从头开始编写代码,从创建文本框等开始?
任何开放源代码API?
我正在为Web应用程序创建我的降价编辑器。更好的比喻可以是Stack Overflow/RedNotebook,当我们将内容输入到文本框中时,立即格式化的输出会显示在它旁边。如何创建降价编辑器
这样的模型是否有任何示例实现?或者我应该从头开始编写代码,从创建文本框等开始?
任何开放源代码API?
我有完美的解决方案给你,我只是写了这个。
下载PHP Markdown Extra,并放在同一目录作为这个脚本:当然
<?php
include_once("markdown.php");
if(isset($_GET['mode']) && $_GET['mode'] == 'ajax')
die(Markdown($_POST['markdown']));
?><html>
<head>
<style>
span { text-align: left; width: 49% }
textarea { height: 100%; width: 100% }
#left { float: left; }
#right { float: right; }
</style>
<script type='text/javascript'>
function ajax()
{
if(window.XMLHttpRequest)
var request = new XMLHttpRequest();
else if(window.ActiveXObject)
var request = ActiveXObject("Microsoft.XMLHTTP");
request.open("POST", "?mode=ajax", true);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.send('markdown=' + document.getElementById('markdown').value);
request.onreadystatechange = function()
{
if(request.readyState == 4 && request.status == 200)
document.getElementById('right').innerHTML = request.responseText;
}
}
window.onload = function(){ ajax(); }
</script>
</head>
<body>
<div>
<span id='left'>
<textarea id='markdown' onkeyup='ajax();'></textarea>
</span>
<span id='right'>
Loading...
</span>
</div>
</body>
</html>
这仅仅是一个简单的概念。它需要一些改进,但它是我想要找的东西的基础。
您应该限制这些AJAX请求......否则会在服务器上创建大量流量......并且不能保证以特定顺序返回请求,因此您可能最终没有预览窗口与用户的输入同步。 – 2013-02-14 02:08:13
@TimMedora正如我所说,这只是一个基础。理想情况下,我会写一个完整的JS解决方案,但这是我刚刚碰到的事情,而且看起来很合适。但我不建议长期发送数千个HTTP请求。 – 2013-02-14 03:34:59
@TimMedora我发布了一个更好的答案。 – 2013-02-15 02:13:37
这不是这个问题的适当位置。这种问题更适合[聊天]。参见[关于StackOverflow](http://stackoverflow.com/about)。 – 2013-02-13 02:18:49
https://github.com/evilstreak/markdown-js – jthomas 2013-02-13 02:18:53
请参阅[什么是好的客户端降价编辑器?](http://stackoverflow.com/questions/2357022/what-is-a-good-client-侧面降价编辑器)的选项,包括本网站上使用的编辑器。 – 2013-02-13 02:20:45