2014-09-05 68 views
0

我正在使用jQuery降價腳本。這使得在大膽用雙星號(就像這裏的編輯的話增強jQuery降價代碼

另外,如果你有一個>符號開始你的句子:。

> Hello World. 

它包裝句成塊引用它的偉大工程,看到它在這裏的行動:http://jsfiddle.net/pezbdt2h/

現在,我想使如果句子用P標籤開始,具有比年初符號的極大改善這部分代碼,那麼就應該換句進入blockquote以及:

<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>>以及和包裝成塊引用?我想在代碼中有一個AND/OR類型的問題。

+2

最大的問題是你爲什麼要重新發明輪子?即你的車輪將如何變得更好/更好? – amphetamachine 2014-09-05 13:36:58

+0

@amphetamachine你問我爲什麼不製作這個服務器端?這是爲我的個人項目和手頭上的問題無關:) – 2014-09-05 13:38:16

+1

我問你爲什麼要重塑[這個輪子](https://github.com/evilstreak/markdown-js)。 [或這一個](https://code.google.com/p/pagedown/wiki/PageDown)。 – amphetamachine 2014-09-05 13:40:20

回答

0

爲每個DOM元素上的innerHTML調用相同的函數?

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

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

jsFiddle