1

我在我的项目中使用 wmd markdown 编辑器,但我的代码标签有问题:如果我输入代码片段,markdown 不会正确转换为 html,它会在“ <p>”标签中转换,但如果我先输入一些其他文本,然后再输入代码片段在“”标签中正确转换<code>这是 wmd 降价编辑器的错误吗?我该如何解决这个问题?

4

2 回答 2

1

我实际上是在为我的固定版本的 WMD 编辑工作。使用正则表达式,您可以快速删除前导标签和尾随<p>标签,这些标签是导致很多问题的最明显原因:

html = html.replace(/^<p>/g, '').replace(/<\/p>$/g, '');

在 wmd 中强制执行此操作..

(我假设您使用的是 wmd 编辑器的 SO fork)找到这部分代码并将其更改如下:

var convertToHtml = function(){

    if (wmd.showdown) {
        var markdownConverter = new wmd.showdown.converter();
    }
    var text = inputBox.value;

    var callback = function(){
        inputBox.value = text;
    };

    if (!/markdown/.test(wmd.wmd_env.output.toLowerCase())) {
        if (markdownConverter) {
            inputBox.value = markdownConverter.makeHtml(text);

            // Add this line here:
            inputBox.value= inputBox.value.replace(/^<p>/g, '').replace(/<\/p>$/g, '');

            top.setTimeout(callback, 0);
            }
        }
    return true;
};

未经测试,但你应该明白。

于 2009-12-05T17:50:45.690 回答
0

用 T. Stone 先生回答。我已经在我使用的大规模杀伤性武器中完成了删除

<p> ..article.. </p>

成为..文章..

这里是 WMD.js 代码 :(line : 910 )

if (converter) {
    text = converter.makeHtml(text);
    //new code here
    text= text.replace(/^<p>/g, '').replace(/<\/p>$/g, '');
}

我在回答中写了这个,因为我很高兴它在一周内解决了我的问题。谢谢你。

于 2013-03-07T06:00:04.693 回答