0

我正在寻找一个简单的选项来禁止任何 HTML 条目。我想防止用户复制+粘贴他们在网络上找到的外部 HTML,因为它总是会导致问题。

4

1 回答 1

0

这是跨浏览器的一项肮脏工作。对于 safari 和 chrome,您可以使用粘贴事件。例如:

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);
});​

使用 onbeforepaste 和/或 onpaste 的 IE 也是如此。但主要问题是,您无法在 Firefox 中访问剪贴板。一些项目使用隐藏的文本区域并捕获 CTRL+V 之类的键盘组合,但据我所知,这些解决方案并不是很令人满意。

于 2012-12-28T02:06:15.490 回答