사용자:하늘/addCopyButtonToCode.js: 두 판 사이의 차이

잔글 (Chirho님이 사용자:Cerulean/addCopyButtonToCode.js 문서를 넘겨주기를 만들지 않고 사용자:하늘/addCopyButtonToCode.js 문서로 이동했습니다: "Cerulean" 사용자의 이름을 "하늘"(으)로 바꿀 때 문서를 자동으로 이동했습니다)
편집 요약 없음
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');
var copybutton = new OO.ui.ButtonWidget( {
const code = element.firstChild.innerText;
    label: 'copy',
copybutton.innerText = "copy";
    icon: 'code',
copybutton.addEventListener('click', function() {
  title: 'copy'
} );
$( document.body ).append( button.$element );
 
copybutton.on('click', function() {
copyCode(code);
copyCode(code);
copybutton.innerText = "copy!";
copybutton.innerText = "copy!";

2022년 9월 4일 (일) 13:01 판

function addCopyLinkToCodeElements() {
	const elements = document.querySelectorAll(".mw-parser-output .mw-highlight");
	elements.forEach(function(element) {
		var copybutton = new OO.ui.ButtonWidget( {
    		label: 'copy',
    		icon: 'code',
	   		title: 'copy'
		} );
		$( document.body ).append( button.$element );

		copybutton.on('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()});