This repository has been archived on 2023-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
python-blog/src/articles/static/copy-code.js

28 lines
834 B
JavaScript

"use strict";
function addCopyCode() {
const codeBlocks = document.querySelectorAll("pre");
codeBlocks.forEach((pre) => {
pre.addEventListener("click", (event) => {
if (event.detail === 4) {
const selection = window.getSelection();
selection.setBaseAndExtent(
pre.querySelector("code").firstChild,
0,
pre.querySelector("code").lastChild,
1
);
}
});
pre.setAttribute("title", "Quadruple click to select all");
});
}
((readyState) => {
if (readyState === "interactive") {
addCopyCode();
} else if (readyState === "loading") {
window.addEventListener("DOMContentLoaded", addCopyCode, false);
}
})(document.readyState);