我使用 pagedown 作为文本编辑器,但我不希望用户能够在他们的内容中嵌入图像(链接可以)。
如何防止图像显示?最好我根本不希望 pagedown 为图像生成 html。
我使用 pagedown 作为文本编辑器,但我不希望用户能够在他们的内容中嵌入图像(链接可以)。
如何防止图像显示?最好我根本不希望 pagedown 为图像生成 html。
要删除使用按钮添加图像的功能,您可以注释掉以下几个部分Markdown.Editor.js
:
要确保禁用键盘快捷键,请注释掉下面的“g”部分:
...
case "k":
doClick(buttons.code);
break;
/*
case "g":
doClick(buttons.image);
break;
*/
case "o":
doClick(buttons.olist);
break;
...
要消除图像按钮,请注释掉该部分:
...
buttons.code = makeButton("wmd-code-button", getString("code"), "-80px", bindCommand("doCode"));
/*
buttons.image = makeButton("wmd-image-button", getString("image"), "-100px", bindCommand(function (chunk, postProcessing) {
return this.doLinkOrImage(chunk, postProcessing, true);
}));
*/
makeSpacer(2);
...
但是,精明的 Markdown 用户可能知道如何在不使用按钮的情况下输入图像。要抓住这一点,您可以在以下内容中执行以下操作Markdown.Converter.js
:
转到_DoImages
函数,并替换此行:
text = text.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g, writeImageTag);
像这样的东西:
text = text.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g, "IMAGES NOT SUPPORTED");
再一次,这一行:
text = text.replace(/(!\[(.*?)\]\s?\([ \t]*()<?(\S+?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g, writeImageTag);
有了这个:
text = text.replace(/(!\[(.*?)\]\s?\([ \t]*()<?(\S+?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g, "IMAGES NOT SUPPORTED");
现在,只要转换器找到图像的降价,它就会将其替换为“不支持的图像”,包括在预览窗口中。这可能是也可能不是您想要的,但您也可以用空字符串、其他标签、...替换