2009-12-03 68 views
10

目前我解析bbcode服務器端,但我想顯示一個預覽就像這個網站一樣。任何好的JavaScript BBCode解析器?

如果我用ajax這是一個有點laggy處理服務器端設置高亮,所以我想這樣做客戶端,只顯示預覽。

難道你們知道用JavaScript編寫的任何的bbcode解析器?

回答

5

我還沒有親自使用任何Javascript BBcode解析器,但前兩項谷歌搜索結果(bbcodejsthis blog post)似乎很弱。前者似乎只支持簡單的查找和替換,而後者似乎已經預先設置了BBcode,所以如果您選擇該解決方案,您可能不得不破解它。

你最好的選擇可能是推出自己的解決方案(可能是你的基礎工作,在這裏下車的兩個鏈接之一),或只使用AJAX,繼續前進。這可能是確保預覽準確無誤的最佳方式,無論如何,每次按鍵都無需實時預覽;即使發送請求之前的延遲也是可以接受的。

+5

是的,我在發佈之前看到了這兩個鏈接,但我正在尋找一些更受歡迎的內容,就像我現在使用的庫(http://bbcode.codeplex.com/)。 所以,我可能只是將它移植到JS。 似乎沒有太多 – Drevak 2009-12-04 04:59:26

+4

你是否正在推薦一些東西,它裏面有'eval(「/」+ obj [k] .tmatch [tm] +「/ gi.test(tag [tm])」)? – katspaugh 2011-09-23 13:37:20

+2

@Matchu:我認爲這些傲慢的「讓我給你Google」對Stack Overflow來說是不必要的評論(它們也減少了獲得upvotes的機會)Stack Overflow就像一個巨大的知識庫,使用Google很容易找到(!),所以看到有用的答案真的很好,沒有討厭的評論。:) – Sk8erPeter 2014-01-07 16:27:56

7

這是一個有點晚了,問題肯定已經回答了。但是,如果您仍然樂於接受建議,並且還沒有花時間將指定的解析器從C#轉換爲JavaScript,我已經編寫了一個解析器(最初是PHP),我將它自己[2]轉換爲JavaScript。它在bitbucket下有3個子句的BSD許可證。解析器似乎相當快,但我沒有對其速度進行任何分析。

它在某些方面可能不像其他可能的項目那樣靈活,但它確實允許定義您自己的代碼(「bb-code」或不是,有很多屬性),並且也包含在其中一個文件。這不是一個簡單的查找和替換解析器,並且不基於正則表達式。

如果這是任何你感興趣的,它可能從有到其他圖書館轉換救你。從技術上講,我是一個相對「未知」的人,但這是關於JS/OSS的偉大之處:你可以查看源代碼,看看我做了什麼。

[2]其結果是,有一些剩餘的「兼容性函數」,但是我重寫東西有天然等同可用。

+2

請使用github! – Mark 2011-01-21 11:43:02

+0

@ArtMcBain:在bitbucket上找不到項目-1 – 2012-01-04 04:47:33

+1

+1。哦,https://bitbucket.org/AMcBain/bb-code-parser將成爲實際存儲庫的鏈接。 – zrvan 2012-01-17 07:46:13