Jquery 使用MarkItUp编辑器使Pagedown工作

Jquery 使用MarkItUp编辑器使Pagedown工作,jquery,html,asp.net-mvc-3,razor,markdown,Jquery,Html,Asp.net Mvc 3,Razor,Markdown,我有一个MVC3网站,需要处理用户帖子。我正在尝试使用MarkItUp进行文本编辑,因为我喜欢它功能齐全、易于自定义的功能。但是,我使用两个标记库进行转换:(客户端)和(服务器端) 以下是我的编辑视图中的脚本: <script type="text/javascript" src="@Url.Content("~/scripts/jquery.markitup.js")"></script> <script type="text/javascript" src="@

我有一个MVC3网站,需要处理用户帖子。我正在尝试使用MarkItUp进行文本编辑,因为我喜欢它功能齐全、易于自定义的功能。但是,我使用两个标记库进行转换:(客户端)和(服务器端)

以下是我的编辑视图中的脚本:

<script type="text/javascript" src="@Url.Content("~/scripts/jquery.markitup.js")"></script>
<script type="text/javascript" src="@Url.Content("~/scripts/jquery.markitup.settings.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/Markdown.Converter.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/Markdown.Sanitizer.js")"></script>
<script type="text/javascript" >
    $(document).ready(function () {
        var converter = new Markdown.Converter();
        $('.editor').markItUp(markdownSettings);
        $('.markdown').live('keyup', function () {
        var md = $('#comment-editor').val();
        var html = converter.makeHtml(md);
        $('#preview').html(html);
    });
    $('.markdown').live('click', function () {
        var md = $('#comment-editor').val();
        var html = converter.makeHtml(md);
        $('#preview').html(html);
    });
});
</script>

$(文档).ready(函数(){
var converter=新的Markdown.converter();
$('.editor').markItUp(markdowsettings);
$('.markdown').live('keyup',function(){
var md=$(“#注释编辑器”).val();
var html=converter.makeHtml(md);
$('#preview').html(html);
});
$('.markdown').live('click',函数(){
var md=$(“#注释编辑器”).val();
var html=converter.makeHtml(md);
$('#preview').html(html);
});
});
以及HTML:

@Html.TextArea("html", "enter your text here", new { id = "comment-editor", @class = "editor" })
<div id="preview" class="markdown"></div>
@Html.TextArea(“Html”,“在此处输入文本”,新建{id=“comment editor”,@class=“editor”})
到目前为止还不错。我的问题是。。。当我启动它并开始键入时,一切都是groovy的,因为我键入时预览正在正确转换,但Italic不起作用。无论我使用u符号还是单*符号,在编辑器中键入或单击。。。它不是斜体。

Pagedown转换器和MarkItUp编辑器之间是否存在问题?还是我真的错过了什么

为了澄清,这里是预览DIV的样子(Firebug):


你每天都看不到的东西

请注意,“dont”用
\uuu
字符标记,而“every”用
*
所写的就是我想要的。在我看来,你只是有一个CSS规则,它阻止斜体样式按你的意愿显示。您的降价实现没有任何问题

通过在
#preview.markdown
中添加适当的CSS规则样式元素,可以在不影响站点其余部分的情况下修复此问题


顺便说一下,CSS重置脚本删除样式的原因是:当您依赖浏览器默认设置来设置内容样式时,您可能会出于视觉效果而使用标记,而不是出于语义目的。通过这样做,当浏览器以不同的方式解释这些元素的表示时,您更有可能遇到问题。重置会改变这一点,并尝试为您提供一个一致的白板,您可以在其中编写语义有效的HTML,然后使用CSS根据自己的喜好设置样式。您可以在.

中了解更多有关这方面的信息。预览中的HTML是什么样子的?是否所有的标签中都有斜体字?降价字符是否已删除或保留在预览中?@DavidBrainer Banker我为您更新了问题。从Firebug来看,下划线和星号字符似乎都在用
包装文本。您是否使用了任何形式的CSS重置脚本?哪些样式应用于
元素(您也应该能够在Firebug中看到这一点)?是的。我知道默认情况下,所有用户代理样式表都使用ems斜体。大多数css重置表都会覆盖这一点。@one.beat.consumer是否有现场预览,我可以自己查看该网站的行为?我也许能准确地指出发生了什么。但是,因为您看到了
标记,所以您可以放心,降价是按预期进行的。我感到尴尬。我对javascript库的协同工作非常谨慎,以至于遗漏了一些非常迟钝的东西。我在样式表中设置了
em
,但在某一点上丢失了几天的源代码,并且没有进行逐行比较。@Matthewstrobbridge-我希望我没有感到不安,但我将把这封信交给David,因为他是第一个响应的人,它提醒我检查导致CSS的实时HTML呈现。谢谢你的帮助,谢谢你的眼睛。我非常清楚CSS重置,用于浏览器处理的表格。。。我很尴尬,我没有检查那里。我在某个地方丢了一行,因为它是在@one.beat.consumer之前设计的。大卫的回答很好,更不用说尴尬了。
<div id="preview" class="markdown">
    <p>stuff you <em>dont</em> see <em>every</em> day.</p>
</div>