Zum Hauptinhalt springen
';
html += '' + code.data + '
';
html += '';
html += '';
(function(){
var __b = document.createElement('button');
__b.type = 'button';
__b.className = 'copy-btn';
__b.style.cssText = 'background:#6C8A5E;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;';
__b.dataset.copy = JSON.stringify(('' + code.data.replace(/'/g, "\\'") + '') || '');
__b.textContent = '复制内容';
__b.addEventListener('click', function(){ var t='' + code.data.replace(/'/g, "\\'") + ''; navigator.clipboard.writeText(String(t==null?'':t)).then(function(){ __b.textContent = '已复制'; setTimeout(function(){ __b.textContent = '复制内容'; }, 1500); }).catch(function(){ __b.textContent = '复制失败'; }); });
html += __b.outerHTML;
})();
html += '
';
resultContent.innerHTML = html;
resultMeta.textContent = '已解析 (' + code.data.length + ' 字符)';
resultArea.classList.add('show');
} else {
showError('未识别到二维码, 请尝试更清晰的图片');
}
}
file.addEventListener('change', function(e) {
clearError(); clearResult();
var f = e.target.files[0];
if (!f) return;
var img = new Image();
img.onload = function() { parseImg(img); };
img.onerror = function() { showError('图片加载失败'); };
img.src = URL.createObjectURL(f);
});
paste.addEventListener('click', function() { file.click(); });
paste.addEventListener('paste', function(e) {
var items = e.clipboardData.items;
for (var i = 0; i < items.length; i++) {
if (items[i].type.indexOf('image') === 0) {
var blob = items[i].getAsFile();
var img = new Image();
img.onload = function() { parseImg(img); };
img.onerror = function() { showError('图片加载失败'); };
img.src = URL.createObjectURL(blob);
return;
}
}
showError('剪贴板中未找到图片');
});
document.getElementById('btn-clear').addEventListener('click', function() {
file.value = ''; clearError(); clearResult();
});
})();