增强jQuery markdown代码

时间:2014-09-05 13:34:42

标签: javascript jquery html markdown

我正在研究jQuery markdown脚本。它使单词用粗体包裹在双星号中(就像这里的编辑器一样。

此外,如果您使用>符号开始您的句子:

> Hello World.

它将句子包装成blockquote。它效果很好,请在此处查看:http://jsfiddle.net/pezbdt2h/

现在,我想改进代码的这一部分,以便如果句子以P标签开头并且在开头有一个伟大的符号,那么它应该将句子包装成blockquote as好:

<p>> Hello World. 

以下是代码:

function markdown(markdownableOrg) {

    var bold = /\*\*(\S(.*?\S)?)\*\*/gm;

var dataArray=markdownableOrg.split("\n");
    var data=[];
for(var i=0;i<dataArray.length;i++)
{
     var    markdownable =dataArray[i];
      markdownable = markdownable.replace(bold, '<span style="font-weight:bold">$1</span>');
    if (markdownable.indexOf("&gt;") == 0) {
        markdownable = markdownable.replace("&gt;", "<blockquote>");
        markdownable += "</blockquote>";
    }
    data.push(markdownable)
}

    return data.join("\n");
}

如何增强代码以便它也检测到<p>>并将其包装到blockquote中?我想在代码中有一个AND / OR类型的问题。

1 个答案:

答案 0 :(得分:0)

在每个DOM元素上为innerHTML调用相同的函数?

 jQuery('.revision_content *').each(function() {
    var markdownable = jQuery(this).html(),
        revision_content = markdown(markdownable);

    jQuery(this).html(revision_content);
}); 

jsFiddle