0

我直接从以下代码获得此代码:

https://github.com/coreyti/showdown

我创建了一个扩展目录并使用以下代码将 twitter.js 添加到其中:

var demo = function(converter) {
  return [
  // Replace escaped @ symbols
  { type: 'lang', regex: '\\@', replace: 'red' }
];
}

在页面上我有:

<%= javascript_include_tag "showdown" %>
<%= javascript_include_tag "extensions/twitter.js" %>

<script type="text/javascript">
  var converter = new Showdown.converter({ extensions: 'twitter' });
</script>

<script type="text/javascript">
  $('#design_description').keyup(function () {
  var converter = new Showdown.converter();
  var impt = converter.makeHtml($(this).val());
  $(".preview").html(impt);
});
</script>

这是我得到的网络控制台错误:

[15:04:30.945] 未捕获的异常:无法加载扩展“未定义”。它要么未找到,要么不是有效的扩展名。

任何帮助将不胜感激。

4

1 回答 1

1

包装您的演示功能:

(function(){

    var demo = function(converter) {
        return  [
          // Replace escaped @ symbols
          { type: 'lang', regex: '\\@', replace: 'red' }
        ];
    };

    // Client-side export
    if (typeof window !== 'undefined' && window.Showdown && window.Showdown.extensions) { window.Showdown.extensions.demo = demo; }
    // Server-side export
    if (typeof module !== 'undefined') module.exports = demo;

}());
于 2013-07-16T22:54:55.347 回答