summaryrefslogtreecommitdiff
path: root/assets
diff options
context:
space:
mode:
Diffstat (limited to 'assets')
-rw-r--r--assets/js/main_new.js44
1 files changed, 24 insertions, 20 deletions
diff --git a/assets/js/main_new.js b/assets/js/main_new.js
index fbb6926..deb0927 100644
--- a/assets/js/main_new.js
+++ b/assets/js/main_new.js
@@ -43,31 +43,35 @@ $(function () {
});
});
-$(function () {
- var codeBlocks = document.querySelectorAll('div.highlight');
+$(function() {
+ var $codeBlocks = $('div.highlight');
- codeBlocks.forEach(function (codeBlock) {
- var copyButton = document.createElement('button');
- copyButton.className = 'copy';
- copyButton.type = 'button';
- copyButton.innerText = '📋';
+ $codeBlocks.each(function() {
+ var $copyButton = $('<button>', {
+ class: 'copy',
+ type: 'button',
+ text: '📋'
+ });
- codeBlock.append(copyButton);
+ $(this).append($copyButton);
- copyButton.addEventListener('click', function () {
- var code = codeBlock.querySelector('pre code').innerText.trim();
- window.navigator.clipboard.writeText(code)
- .then(() => {
- copyButton.innerText = '✅';
+ $copyButton.on('click', function() {
+ var code = $(this).siblings('pre').find('code').text().trim();
+ var $button = $(this);
+
+ navigator.clipboard.writeText(code)
+ .then(function() {
+ $button.text('✅');
})
- .catch(err => {
- copyButton.innerText = '❌';
- console.error('Failed to copy:', err);
+ .catch(function(err) {
+ $button.text('❌');
+ console.error('复制失败:', err);
+ })
+ .finally(function() {
+ setTimeout(function() {
+ $button.text('📋');
+ }, 1500);
});
-
- setTimeout(function () {
- copyButton.innerText = '📋';
- }, 1500);
});
});
}); \ No newline at end of file