Javascript 如何防止在Markdowndeep中输入HTML?
我正在寻找一个简单的选项来禁止任何HTML条目。我想阻止用户复制并粘贴他们在web上找到的外部HTML,因为它总是会导致问题。这是一项跨浏览器的肮脏工作。对于safari和chrome,可以使用粘贴事件。例如:Javascript 如何防止在Markdowndeep中输入HTML?,javascript,asp.net,markdown,markdowndeep,Javascript,Asp.net,Markdown,Markdowndeep,我正在寻找一个简单的选项来禁止任何HTML条目。我想阻止用户复制并粘贴他们在web上找到的外部HTML,因为它总是会导致问题。这是一项跨浏览器的肮脏工作。对于safari和chrome,可以使用粘贴事件。例如: document.querySelector("div[contenteditable]").addEventListener("paste", function(e) { e.preventDefault(); var text = e.clipboardData.ge
document.querySelector("div[contenteditable]").addEventListener("paste", function(e) {
e.preventDefault();
var text = e.clipboardData.getData("text/plain");
var temp = document.createElement("div");
temp.innerHTML = text;
document.execCommand("insertHTML", false, temp.textContent);
});
IE使用onbeforepaste和/或onpaste也可以实现这一点。但主要的问题是,你不能在firefox中访问剪贴板。有些项目使用隐藏的文本区域并捕获键盘组合,如CTRL+V,但据我所知,这些解决方案的效果并不令人满意。仅对输出进行编码不是更容易(更安全)吗?