我开始参照 ruby-china 写 markdown 的评论框,但是后来发现 bootstrap-markdown 已经封装好了,而且功能齐全,于是改用了它。但是在使用的时候遇到了语文,它默认是英文。看它的文档doc,本地化很简单,只需要如下一行代码就能搞定:
添加了
(function ($) {
$.fn.markdown.messages.zh = {
'Bold': "粗体",
'Italic': "斜体",
'Heading': "标题",
'URL/Link': "链接",
'Image': "图片",
'List': "列表",
'Unordered List': "无序列表",
'Ordered List': "有序列表",
'Code': "代码",
'Quote': "引用",
'Preview': "预览",
'strong text': "粗体",
'emphasized text': "强调",
'heading text': "标题",
'enter link description here': "输入链接说明",
'Insert Hyperlink': "URL地址",
'enter image description here': "输入图片说明",
'Insert Image Hyperlink': "图片URL地址",
'enter image title here': "在这里输入图片标题",
'list text here': "这里是列表文本",
'code text here': "这里输入代码",
'quote here': "这里输入引用文本"
};
}(jQuery));
然后再添加如下代码就 ok 了
$(document).ready(function(){
$("[data-provide=markdown]").markdown({language: 'zh'})
})
但是完全不起作用,跟踪了半天的 js 代码也没找到具体原因。最后跟踪到了这里:
$.fn.markdown = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('markdown')
, options = typeof option == 'object' && option;
if (!data) $this.data('markdown', (data = new Markdown(this, options)))
})
};
按照以上写法,到这里
if (!data) $this.data('markdown', (data = new Markdown(this, options)))
由于 data 存在,就不会继续执行了。我怀疑是文档有问题或者是自己用法有问题,请用过的大神指点一下。