我的页面中有 TinyMCE 4.0,当我选择文本并尝试通过 CTRL+V 粘贴它时,我收到一条错误消息,指出“无法访问剪贴板”。这种情况发生在 IE8/9 中。然而,在 Chrome 中同样可以正常工作。是否有任何解决方法可以使其在 IE 中正常运行?
赏金:
我尝试在两台不同的计算机上重置所有 IE 设置(通过“Internet 选项”->“高级”->“全部重置...”),两台计算机都运行 IE9,其中一台有问题,而另一台则没有。
最终,我需要能够将格式化文本(通常带有项目符号或数字列表等)粘贴到 TinyMCE 中并使其正确格式化。为此,我使用了paste插件,它似乎抛出了错误。
最佳答案
在我看来,您使用的是较旧的 TinyMCE 4 版本,因此我认为您应该首先升级到 latest version (4.0.3)。
我检查了该版本的源代码,没有发现 Clipboard access not possible
错误消息的痕迹,该消息似乎出现在 tinymce/的早期版本中plugins/paste/plugin.min.js
文件,仅适用于 Internet Explorer:
e.ie ? o.on("init", function () {
var e = o.dom;
o.dom.bind(o.getBody(), "paste", function (n) {
var r;
if (n.preventDefault(), a() && e.doc.dataTransfer)
return c(e.doc.dataTransfer.getData("Text")), t;
var i = u();
e.bind(i, "paste", function (e) {
e.stopPropagation(), r = !0
});
var s = o.selection.getRng(),
f = e.doc.body.createTextRange();
if (f.moveToElementText(i.firstChild), f.execCommand("Paste"), d(), !r)
return o.windowManager.alert("Clipboard access not possible."), t;
var p = i.firstChild.innerHTML;
o.selection.setRng(s), l(p)
})
}
由于无法找到此脚本的未缩小版本,我无法说出为什么此类代码会失败,也无法解释为什么它只能在您的一台计算机上运行。
关于javascript - TinyMCE 和 IE 9 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16224054/