5

Web アプリケーション用のマークダウン エディターを作成中です。これは Stack Overflow/ RedNotebookに例えることができます。ここでは、コンテンツをテキスト ボックスに入力すると、すぐに書式設定された出力がその横に表示されます。

そのようなモデルの実装例はありますか? それとも、テキストボックスなどを作成することから始めて、ゼロからコーディングを開始する必要がありますか?

このためのオープンソース API はありますか?

4

2 に答える 2

3

私はあなたにとって完璧な解決策を持っています、私はこれを書きました。

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>

db-ajax

もちろん、これは単純な概念にすぎません。多少の改善が必要ですが、それはあなたが探しているものの基礎だと思います.

于 2013-02-14T00:34:11.690 に答える