41 lines
1.4 KiB
JavaScript
41 lines
1.4 KiB
JavaScript
// 文档下拉菜单交互
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
const docIcon = document.querySelector('.doc-icon');
|
|
const dropdownMenu = document.querySelector('.dropdown-menu');
|
|
const copyButtons = document.querySelectorAll('.copy-btn');
|
|
const tooltip = document.querySelector('.copy-tooltip');
|
|
|
|
if (docIcon && dropdownMenu) {
|
|
docIcon.addEventListener('click', (e) => {
|
|
e.stopPropagation();
|
|
dropdownMenu.classList.toggle('show');
|
|
});
|
|
|
|
document.addEventListener('click', () => {
|
|
dropdownMenu.classList.remove('show');
|
|
});
|
|
|
|
dropdownMenu.addEventListener('click', (e) => {
|
|
e.stopPropagation();
|
|
});
|
|
}
|
|
|
|
if (copyButtons && tooltip) {
|
|
copyButtons.forEach(button => {
|
|
button.addEventListener('click', (e) => {
|
|
e.stopPropagation();
|
|
const password = button.dataset.password;
|
|
|
|
navigator.clipboard.writeText(password).then(() => {
|
|
tooltip.classList.remove('hide');
|
|
tooltip.classList.add('show');
|
|
|
|
setTimeout(() => {
|
|
tooltip.classList.remove('show');
|
|
tooltip.classList.add('hide');
|
|
}, 2000);
|
|
});
|
|
});
|
|
});
|
|
}
|
|
});
|