2

コード補完タイプの関数を実行するjQuery(または純粋なJS、関係ありません)の関数またはプラグインを知っている人はいますか?しかし、変更可能なオプションはありますか?入力を開始したいのですが、最後の角かっこを追加すると、カーソルの後[b]に自動的に追加されますか?[/b]誰かがこのようなことを知っているなら、それは素晴らしく、巨大な時間の節約になるでしょう。

4

1 に答える 1

2

JQuery Caretプラグインを使用すると、次のようなコードを使用できます。

<textarea id="codeInput" cols="80" rows="50">content</textarea>
<script type="text/javascript">

    var tagDict = {
      "[b]" : "[/b]",
      "[c]" : "[/c]",
      "[d]" : "[/d]"
    };

    $(document).ready(function () {
        $('#codeInput').keyup(function () {
            var test = $(this).val();
            var tagStart = test.substr(test.length - 3, 3);
            if (tagDict[tagStart]) {
                $(this).val(test + tagDict[tagStart]);            
                $(this).caret(test.length, test.length);
            }
        });
    });
    </script>

完璧ではありませんが、完全なコード補完関数の開始になる可能性があります。

于 2012-09-08T17:54:39.090 に答える