Skip to content

Commit 04ff8d0

Browse files
committed
applied event listeners to button
1 parent af03d5e commit 04ff8d0

File tree

1 file changed

+18
-20
lines changed

1 file changed

+18
-20
lines changed

data/copyCode.js

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,35 @@
11
function createDOMElements() {
22
const container = document.createElement("div");
3-
container.innerHTML = "<div class='tooltip-copy'><input type='submit' value='Copy' /></div>";
3+
container.innerHTML =
4+
"<div class='tooltip-copy'><input type='submit' value='Copy' /></div>";
45
container.className = "div-copy";
56
return container;
67
}
78

89
function attachCopyCodeFunctionality(div) {
910
const elementsToClean = [];
1011
document
11-
.querySelectorAll("pre")
12-
.forEach(function createButtonAndAttachHandlers(pre) {
13-
let timeout = null;
14-
const copy = div.cloneNode(true);
15-
pre.appendChild(copy);
16-
elementsToClean.push(pre);
17-
pre.onmouseleave = function mouseLeft() {
18-
clearTimeout(timeout);
12+
.querySelectorAll("pre")
13+
.forEach(function createButtonAndAttachHandlers(pre) {
14+
let timeout = null;
15+
const copy = div.cloneNode(true);
16+
pre.appendChild(copy);
17+
elementsToClean.push(pre);
18+
19+
copy.onclick = function copyTextToClipboard() {
20+
navigator.clipboard.writeText(pre.textContent);
21+
copy.classList.add("clicked");
22+
clearTimeout(timeout);
23+
timeout = setTimeout(function hidePopup() {
1924
copy.classList.remove("clicked");
20-
}
21-
pre.onclick = function copyTextToClipboard() {
22-
navigator.clipboard.writeText(pre.textContent);
23-
copy.classList.add("clicked");
24-
clearTimeout(timeout);
25-
timeout = setTimeout(function hidePopup() {
26-
copy.classList.remove("clicked");
27-
}, 3000);
28-
}
29-
});
25+
}, 1500);
26+
};
27+
});
3028

3129
return elementsToClean;
3230
}
3331

3432
export default function createCopyCodeFunctionality() {
3533
const container = createDOMElements();
3634
return attachCopyCodeFunctionality(container);
37-
}
35+
}

0 commit comments

Comments
 (0)