我正在使用Ruby on Rails的網站工作,人們可以在這些網站上發佈帖子,但不能發佈帖子。這些帖子使用Markdown來渲染文本,就像Stack Overflow一樣。無論何時用戶發佈帖子,在文本區域下方都會有一個實時預覽div
,向用戶展示他們的帖子的外觀,就像堆棧溢出一樣。我的問題是我不知道如何讓Markdown在實時預覽中呈現。使用Javascript進行實時預覽的文本中渲染Markdown
我對實時預覽的JavaScript代碼是
window.onload = function(){
var idea = document.getElementById("idea-text");
try{
idea.onkeyup = idea.onkeypress = function(){
document.getElementById('live-preview').innerHTML = this.value.replace(/\n/g, '<br/>');
}
}
catch(e){
}
}
文本將始終是純文本,就使得降價提供任何指針?
編輯:
我解決我的困境是使用降價-JS從https://github.com/evilstreak/markdown-js搞清楚如何與節點使用,這是痛苦的,因爲但是我遇到了許多問題。我在https://rails-assets.org/#/components/markdown上找到了解決方案,爲我的問題提供了簡單的三步解決方案!我的代碼表明,呈現減記文本的實時預覽
window.onload = function(){
var idea = document.getElementById("idea-text");
try{
idea.onkeyup = idea.onkeypress = function(){
document.getElementById('live-preview').innerHTML = markdown.toHTML(this.value);
}
}
catch(e){
}
}
謝謝我會研究這一點。我必須要求我的團隊負責人在服務器上安裝npm,然後我會看看這種方法是否可行。 – Enigma
有一個客戶端在同一個庫[這裏](https://github.com/evilstreak/markdown-js/releases) 我還是主要推薦使用節點。對於富裕開發者來說,這是一個非常棒的工具。 ;) –
再次感謝Davide的建議,我在我的主要帖子中發佈了我的完整解決方案。 – Enigma