From 2cd473019bd8df7f0df13b1adc95ad6be380f701 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=8A=80=E6=9C=AF=E8=80=81=E8=83=A1?= <1094551889@qq.com> Date: Mon, 31 Mar 2025 10:34:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=9D=9EHTTP=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E6=97=A0=E6=B3=95=E7=82=B9=E5=87=BB=E5=A4=8D=E5=88=B6?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- view/pay_manage/index.html | 36 +++++++++++++++++++++++++++++------- view/user/index.html | 38 +++++++++++++++++++++++++++++--------- 2 files changed, 58 insertions(+), 16 deletions(-) diff --git a/view/pay_manage/index.html b/view/pay_manage/index.html index c8713c7..5688522 100644 --- a/view/pay_manage/index.html +++ b/view/pay_manage/index.html @@ -168,13 +168,7 @@ table.on('toolDouble(account-table)', function (obj) { if (obj.event === 'copy') { const text = obj.tr[0].querySelector('td[data-field="checkUrl"]>div').innerText; - if (navigator.clipboard) { - navigator.clipboard.writeText(text).then(() => { - layer.msg('复制成功'); - }); - } else { - layer.msg('复制失败,请手动复制'); - } + copyText(text); } }); // 表格头部按钮事件 @@ -331,6 +325,34 @@ } } }) + // 复制文本到剪贴板 + function copyText(text) { + if (navigator.clipboard && window.isSecureContext === false) { + navigator.clipboard.writeText(text).then(() => { + layer.msg('复制成功'); + }).catch(err => { + copyToClipboardFallback(text); + }); + } else { + copyToClipboardFallback(text); + } + } + // 传统复制文本到剪贴板 + function copyToClipboardFallback(text) { + const textarea = document.createElement('textarea'); + textarea.value = text; + textarea.style.position = 'fixed'; + document.body.appendChild(textarea); + textarea.select(); + try { + document.execCommand('copy'); + layer.msg('复制成功'); + } catch (err) { + layer.msg('复制失败,请手动复制'); + } finally { + document.body.removeChild(textarea); + } + } diff --git a/view/user/index.html b/view/user/index.html index d74878d..e645071 100644 --- a/view/user/index.html +++ b/view/user/index.html @@ -256,13 +256,7 @@ util.on({ 'copyinfo': (ele) => { const info = ele.attr('data-info'); - if (navigator.clipboard) { - navigator.clipboard.writeText(info).then(() => { - layer.msg('复制成功'); - }); - } else { - layer.msg('复制失败,请手动复制'); - } + copyText(info); }, 'resetKey': (ele) => { layer.confirm('重置密钥后,将无法使用原密钥,是否继续?', { icon: 3, title: '重置密钥' }, function (index) { @@ -297,8 +291,34 @@ }); fetch('https://v1.hitokoto.cn?c=d&c=i&c=k&encode=text').then(res => res.text()).then(data => { document.getElementById('yiyan').innerHTML = data || '人无横财不富,马无夜草不肥'; }) - - + // 复制文本到剪贴板 + function copyText(text) { + if (navigator.clipboard && window.isSecureContext === false) { + navigator.clipboard.writeText(text).then(() => { + layer.msg('复制成功'); + }).catch(err => { + copyToClipboardFallback(text); + }); + } else { + copyToClipboardFallback(text); + } + } + // 传统复制文本到剪贴板 + function copyToClipboardFallback(text) { + const textarea = document.createElement('textarea'); + textarea.value = text; + textarea.style.position = 'fixed'; + document.body.appendChild(textarea); + textarea.select(); + try { + document.execCommand('copy'); + layer.msg('复制成功'); + } catch (err) { + layer.msg('复制失败,请手动复制'); + } finally { + document.body.removeChild(textarea); + } + }