1
This commit is contained in:
3422
Yes.Blog/wwwroot/defaulttheme/js/axios.js
Normal file
3422
Yes.Blog/wwwroot/defaulttheme/js/axios.js
Normal file
File diff suppressed because it is too large
Load Diff
36
Yes.Blog/wwwroot/defaulttheme/js/copy-code-block.js
Normal file
36
Yes.Blog/wwwroot/defaulttheme/js/copy-code-block.js
Normal file
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
* 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);
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user