document.addEventListener('paste', function(event) {
var isChrome = false;
if (event.clipboardData || event.originalEvent) {
var clipboardData = (event.clipboardData || event.originalEvent.clipboardData);
if (clipboardData.items) {
var items = clipboardData.items,
len = items.length,
blob = null;
isChrome = true;
//阻止默认行为即不让剪贴板内容在div中显示出来
event.preventDefault();
//在items里找粘贴的image,据上面分析,需要循环
for (var i = 0; i < items.length; i++) {
blob = items[i].getAsFile();
uploadImgFromPaste(blob)
}
//在items里找粘贴的image,据上面分析,需要循环
// blob = items[0].getAsFile();
// // console.log(blob)
// uploadImgFromPaste(blob)
}
}
})
function uploadImgFromPaste(file) {
if (!file) { return }
getBase64(file, function(result) {
var demoListView = $('#enclList');
var index = ctrlVFiles.length;
// var result = getBase64(file);
// 读取本地文件
var fileName = file.name;
var suffixIndex = fileName.lastIndexOf(".");
var suffix = fileName.substring(suffixIndex + 1).toUpperCase();
var tr
if (suffix != "BMP" && suffix != "JPG" && suffix != "JPEG" && suffix != "PNG" && suffix != "GIF") {
tr = $(['<tr id="upload-' + index + '">',
'<td>' + file.name + '</td>',
'<td>' + (file.size / 1024).toFixed(1) + 'kb</td>',
'<td>等待上传</td>',
'<td>',
'<button class="layui-btn layui-btn-xs demo-reload layui-hide">重传</button>',
'<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">删除</button>',
'</td>',
'</tr>'
].join(''));
} else {
tr = $(['<tr id="upload-' + index + '">',
'<td><a class="media" href="javascript:void(0);" onclick="BugObj.openImg(\'' + result + '\',\'' + file.name + '\')" >' + file.name + '</a></td>',
'<td>' + (file.size / 1024).toFixed(1) + 'kb</td>',
'<td>等待上传</td>',
'<td>',
'<button class="layui-btn layui-btn-xs demo-reload layui-hide">重传</button>',
'<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">删除</button>',
'</td>',
'</tr>'
].join(''));
}
ctrlVFiles[index] = file;
// 删除
tr.find('.demo-delete').on('click', function() {
delete ctrlVFiles[index]; // 删除对应的文件
tr.remove();
console.log(ctrlVFiles)
// uploadListIns.config.elem.next()[0].value = ''; // 清空 input// file// 值,以免删除后出现同名文件不可选
});
demoListView.append(tr);
})
}
window.sendFile = function() {
for (var i = 0; i < ctrlVFiles.length; i++) {
var file = ctrlVFiles[i];
if (file) {
var formData = new FormData();
formData.append("file", file);
//追加额外的参数
formData.append("bugId", $("#bugId").val());
$.ajax({
url: baseUrl + "/bug/bugFileUpload",
type: "post",
data: formData,
contentType: false,
processData: false,
dataType: 'json',
success: function(res) {
window.parent.BugObj.search(0);
var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
parent.layer.close(index);
}
})
}
}
}
function getBase64(blob, fn) {
var reader = new FileReader();
reader.onload = function(event) {
var base64_str = event.target.result
fn(base64_str)
}
reader.readAsDataURL(blob);
}
}