편집 요약 없음 |
편집 요약 없음 |
||
2번째 줄: | 2번째 줄: | ||
const elements = document.querySelectorAll(".mw-parser-output .mw-highlight"); | const elements = document.querySelectorAll(".mw-parser-output .mw-highlight"); | ||
elements.forEach(function(element) { | elements.forEach(function(element) { | ||
const copybutton = document.createElement('button'); | |||
const code = element.firstChild.innerText; | |||
copybutton.innerText = "copy"; | |||
copybutton.addEventListener('click', function() { | |||
copybutton. | |||
copyCode(code); | copyCode(code); | ||
copybutton.innerText = "copy!"; | copybutton.innerText = "copy!"; | ||
18번째 줄: | 15번째 줄: | ||
const endBlock = document.createElement('div'); | const endBlock = document.createElement('div'); | ||
endBlock.style = "clear:both"; | endBlock.style = "clear:both"; | ||
element.prepend(copybutton | element.prepend(copybutton); | ||
element.appendChild(endBlock); | element.appendChild(endBlock); | ||
}); | }); |
2022년 9월 4일 (일) 13:04 판
function addCopyLinkToCodeElements() {
const elements = document.querySelectorAll(".mw-parser-output .mw-highlight");
elements.forEach(function(element) {
const copybutton = document.createElement('button');
const code = element.firstChild.innerText;
copybutton.innerText = "copy";
copybutton.addEventListener('click', function() {
copyCode(code);
copybutton.innerText = "copy!";
setTimeout(function(){
copybutton.innerText = "copy";
}, 500);
});
copybutton.style = "float:right; margin-left: -9999999px; margin-top: 0.7em; margin-right: 0.7em;";
const endBlock = document.createElement('div');
endBlock.style = "clear:both";
element.prepend(copybutton);
element.appendChild(endBlock);
});
}
function copyCode(codeText) {
navigator.clipboard.writeText(codeText);
}
$(function() {addCopyLinkToCodeElements()});