$("body").append('') $("#imgexif_imgfile").change(function(e) { var file = e.target.files[0]; if (window.FileReader) { var fr = new FileReader(); fr.readAsDataURL(file); fr.onloadend = function(e) { var base64Data = e.target.result; base64ToqR(base64Data) } } }) function base64ToqR(data) { var c = document.getElementById("qrcanvas"); var ctx = c.getContext("2d"); var img = new Image(); img.src = data; img.onload = function() { $("#qrcanvas").attr("width", img.width) $("#qrcanvas").attr("height", img.height) ctx.drawImage(img, 0, 0, img.width, img.height); var imageData = ctx.getImageData(0, 0, img.width, img.height); const code = jsQR(imageData.data, imageData.width, imageData.height, { inversionAttempts: "dontInvert", }); if (code) { showCode(code.data) } else { layer.alert("识别错误,请上传正确的二维码") } }; } function showCode(code) { $("#resultpanel").show(); $("#result").show(); $(".vtextarea").val(code) }