123456789101112131415161718192021222324252627282930313233343536 |
- /*
- * Every codeblock has "pre > code" structure, some highlighted codeblocks have
- * "div.highlight > pre.chroma > code" structure. So, use the simple CSS selector
- * to query all codeblocks.
- */
- document.addEventListener("DOMContentLoaded",
- () => {
- var codeblocks = document.querySelectorAll(".single .content pre code");
- console.log("codeblocks length:", codeblocks.length);
- codeblocks.forEach(
- (codeblock) => {
- let elementPre = codeblock.parentElement;
- let button = document.createElement("div");
- button.classList.add("copyCodeButton");
- button.innerHTML = "copy";
- button.addEventListener("click",
- () => {
- navigator.clipboard.writeText(codeblock.textContent);
- button.innerHTML = "copied!";
- setTimeout(
- () => { button.innerHTML = "copy"; },
- 1000
- );
- }
- );
- elementPre.appendChild(button);
- }
- );
- }
- );
|