从jQuery .val()添加文本时,如何更新MarkdownDeep的实时预览?

时间:2014-03-05 15:14:57

标签: javascript jquery markdown markdowndeep

我目前正在评估MarkdownDeep在我的网站上使用。在编辑器上方,我显示用户先前上传的图像列表。要将图像(包含在较大版本的链接中)插入<textarea>,用户单击图像。但是,在用户在<textarea>中添加其他输入之前,实时预览不会显示图像。是否可以通过jQuery更新实时预览?

这是我用来插入图片的代码:

$("img").click(function () {
    var imgsrc = $(this).attr('src');
    var content = $('textarea').val();
    $('textarea').val(content + '<a href="' + imgsrc + '"><img src="' + imgsrc + '" width="50" height="50" /></a>');
});

1 个答案:

答案 0 :(得分:1)

我明白了。如果我们在MarkdownDeepEditor.js文件中绑定focus事件,然后将焦点设置为textarea,则预览将更新。

MarkdownDeepEditor.js中的第539行之后添加以下内容:(您应该看到其他BindEvents。)

BindEvent(textarea, "focus", function(){ed.onMarkdownChanged();});

在我的html中,我将添加以下代码:

$("img").click(function () {
    var imgsrc = $(this).attr('src');
    var content = $('textarea').val();
    $('textarea').val(content + '<a href="' + imgsrc + '"><img src="' + imgsrc + '" width="50" height="50" /></a>');
    $('textarea.mdd_editor').focus();
});