mirror of
https://github.com/Raghu-Ch/angular-challenges.git
synced 2026-02-10 12:53:03 -05:00
feat(docs): use setTimeout instead of mouseleave event
This commit is contained in:
@@ -39,18 +39,20 @@ const { copyText } = Astro.props;
|
|||||||
const commandCopyBtn = document.querySelector('.copy-button');
|
const commandCopyBtn = document.querySelector('.copy-button');
|
||||||
const copiedCheckMark = document.querySelector('.copied-checkmark');
|
const copiedCheckMark = document.querySelector('.copied-checkmark');
|
||||||
const tooltipText = document.querySelector('.tooltipText');
|
const tooltipText = document.querySelector('.tooltipText');
|
||||||
const container = document.querySelector('.copy-container');
|
|
||||||
|
|
||||||
container.addEventListener('mouseleave', () => {
|
let timeout;
|
||||||
copiedCheckMark.style.display = 'none';
|
|
||||||
commandCopyBtn.style.display = 'inline-block';
|
|
||||||
tooltipText.innerHTML = 'Copy';
|
|
||||||
});
|
|
||||||
commandCopyBtn.addEventListener('click', () => {
|
commandCopyBtn.addEventListener('click', () => {
|
||||||
navigator.clipboard.writeText(copyText);
|
navigator.clipboard.writeText(copyText);
|
||||||
tooltipText.innerHTML = 'Copied';
|
tooltipText.innerHTML = 'Copied';
|
||||||
copiedCheckMark.style.display = 'inline-block';
|
copiedCheckMark.style.display = 'inline-block';
|
||||||
commandCopyBtn.style.display = 'none';
|
commandCopyBtn.style.display = 'none';
|
||||||
|
//clear previous timeout
|
||||||
|
clearTimeout(timeout);
|
||||||
|
timeout = window.setTimeout(()=>{
|
||||||
|
copiedCheckMark.style.display = 'none';
|
||||||
|
commandCopyBtn.style.display = 'inline-block';
|
||||||
|
tooltipText.innerHTML = 'Copy';
|
||||||
|
}, 750)
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user