javascript - 窗口粘贴 Ctrl+V addEventListener 不在 IE 11 中触发但在 Chrome 中触发
问题描述
这是我在chrome浏览器中完美运行的代码
window.addEventListener("paste", pasteHandler); //chrome
问题出在IE11Ctrl+V
浏览器中,当在剪贴板上从未触发select 时。
我试过这个没有成功
if (window.addEventListener) {
alert("firefox, chrome, etc");
window.addEventListener("paste", pasteHandler, false);
} else if (window.attachEvent) {
alert("IE");
window.attachEvent("paste", pasteHandler);
}
这是为什么?
我的代码如下
var canvas = document.getElementById("cc");
var ctx = canvas.getContext("2d");
if (window.addEventListener) {
alert("firefox, chrome, etc");
window.addEventListener("paste", pasteHandler, false);
} else if (window.attachEvent) {
alert("IE");
window.attachEvent("paste", pasteHandler);
}
function pasteHandler(e) {
if (e.clipboardData == false) return false; //empty
var items = e.clipboardData.items;
if (items == undefined) return false;
for (var i = 0; i < items.length; i++) {
if (items[i].type.indexOf("image") == -1) continue; //not image
var blob = items[i].getAsFile();
var URLObj = window.URL || window.webkitURL;
var source = URLObj.createObjectURL(blob);
paste_createImage(source);
}
}
编辑
这个链接失效了
解决方案
推荐阅读
- python - 警告:不要在生产环境中使用开发服务器,并且在服务器上找不到请求的 URL
- amazon-web-services - 如何从 Lambda 函数与私有 EC2 实例通信
- android - 图像不断旋转android studio
- sql - 从我的 SQL 查询结果中删除重复项
- python - 班级没有看到另一个班级,我该如何解决这个问题?
- java - vaadin 工具提示未显示在对话框中
- java - Apache poi excel writer 在 ide 中工作,但不在 fat jar 中?java.io.IOException:您的 InputStream 既不是 OLE2 流,也不是 OOXML str
- regex - 替换无效的文件名字符
- swift - 在 SwiftUI 中将数据从一个 ViewModel 传递到另一个 ViewModel?
- html-table - 如何将图例定位在图表的右下角?