-
Notifications
You must be signed in to change notification settings - Fork 87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
关于HTML转义与预览模式的问题 #428
Comments
你指的是在文本中加入<>这些字符会与标签冲突吗? 这个如果是开启了『支持HTML』选项的话,是无法避免的,因为很难判断<>到底是HTML还是Plain Text,不过我这边测试关闭这个选项之后不会转义,如果情况不是这样的话,麻烦回复一下。 如果是需要插入HTML,开启这个选项就可以了。
指的是在编辑器中加入非文本内容(比如表单)会对编辑器保存功能造成影响吗? 之前的确没有考虑过关于这方面的需求,我测试一下。
这句话我不是很理解,什么叫做语言标记注入规则呢?指的是允许使用第三方语法高亮插件来覆盖本插件语法高亮,还是指希望能在Markdown文本中插入能被第三方语法高亮插件识别的代码段呢? |
此外关于你提到的这三部分,可以的话麻烦分别用Ubuntu Pastebin粘贴一份原文,方便复现故障。 因为我没有遇到过这个问题,所以说目前没有很好的思路进行测试。 |
以下是测试样例Pastebin |
|
抱歉这边还是给我转义了:第一点我指的是 |
原来如此,你的意思是输入HTML实体会依旧被解析为标签,然后不可见吗? |
是的,编辑器会自动解析为标签保存 |
你可在我的测试例当中看到 |
好的,我尝试测试一下。 你刚刚提到的 使用iframe可能是比较适合的方法,只是要涉及较多模块。我尽快解决。抱歉带来不便。 |
第一个案例的确也会导致页面出现错误,猜测可能是代码段未被正常转义导致的。我思考下如何解决。 |
嗯,目前你提到的两个问题都已经可以复现出来了,第一个问题在于未对预览窗口进行隔离,第二个问题在于预览窗口未对代码进行转义导致代码被执行。 因为手头还有一些比较重要的BUG需要修复,可能无法在下个版本解决你提出的问题,对这些问题的修复会在四月完成,修复完成后将会回复此Issue通知你。 感谢反馈: ) |
十分感谢你的重视 |
你好,最近我在尝试解决这一问题,解决方法是在开启HTML转义后,对包含如下标签的内容进行过滤,过滤后在预览阶段不进行解析,而是原文显示(发布不受影响): const htmlTagEscapedItem = [
// 可能会引起样式错乱或XSS漏洞的标签
"script", "style",
// 每次输入新字符都会导致重复加载的标签
"audio", "video",
// 表单相关内容,可能会影响编辑器其他功能(如无法提交)
"input", "textarea", "button", "select", "option", "optgroup", "fieldset", "output"
]; 按照预期,这一功能将于不久后的10.2.0版本发布。不知道你有没有什么相关的建议呢? 感谢对本插件的支持,祝好。 |
你好,该问题已于最新发布的 10.2.0 版本解决,再次感谢反馈,祝使用愉快。如果以后有其他问题也欢迎继续反馈~ Release:https://github.com/LuRenJiasWorld/WP-Editor.md/releases/tag/v10.2.0 |
首先感谢一下作者的工作,以下是问题:
``
之外保存HTML实体,譬如“<>”等。可能是我的需求有些奇怪,为了自己的主题样式我需要自己写
pre code
加属性,但是发现HTML的实体会在保存后自动转义以致无法正常显示,经典编辑器则正常。form
且有require
将会影响编辑器的保存提交。私以为预览窗口应该放置于独立的iframe
中。以上问题均发生在此文:缺省样式测试
另外,是否可以考虑自定义
pre code
的语言标记注入规则以适应自己的代码高亮方案(这个需求不是主要的The text was updated successfully, but these errors were encountered: