【发布时间】:2020-03-07 05:08:36
【问题描述】:
在此示例中,我尝试将 #fileDisplayArea 中的所有内容转换为降价。但是,div 中的原始 HTML 未被应用。
<div id="fileDisplayArea"># Title
Lorem **ipsum** dolor sit amet, *consectetur adipiscing* elit
<center>Consectetur libero id faucibus nisl tincidunt eget</center>
In ornare quam viverra orci sagittis eu.
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/markdown-it/10.0.0/markdown-it.min.js"></script>
<script>
let md = window.markdownit();
let txt = document.getElementById('fileDisplayArea').innerHTML;
document.getElementById('fileDisplayArea').innerHTML = md.render(txt);
</script>
运行此代码会正确转换降价元素,但不会读取原始 HTML,而是显示在输出中。将 innerHTML 的最后一个实例更改为 innerText 会提供以下输出:
<p>Lorem <strong>ipsum</strong> dolor sit amet,
<em>consectetur adipiscing</em> elit</p>
<p><center>Consectetur libero id faucibus nisl tincidunt eget</center></p>
<p>In ornare quam viverra orci sagittis eu.</p>
这表明小于/大于符号正在被转义。如何防止这种情况发生?
【问题讨论】:
标签: javascript html markdown-it