MediaWiki:Gadget-MyCoolGadget.js
Erscheinungsbild
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
mw.loader.using(['mediawiki.util']).then(function () {
function copyText(text, btn) {
// Versuch modernes Clipboard API
if (navigator.clipboard && window.isSecureContext) {
navigator.clipboard.writeText(text).then(success);
return;
}
// Fallback (funktioniert über HTTP / LAN)
const textarea = document.createElement("textarea");
textarea.value = text;
document.body.appendChild(textarea);
textarea.select();
document.execCommand("copy");
document.body.removeChild(textarea);
success();
function success() {
btn.textContent = "✅ Kopiert!";
setTimeout(() => btn.textContent = "📋 Kopieren", 1500);
}
}
function addCopyButtons() {
document.querySelectorAll('pre, .mw-highlight pre').forEach(function (block) {
if (block.dataset.copyButtonAdded) return;
block.dataset.copyButtonAdded = "true";
const btn = document.createElement("button");
btn.textContent = "📋 Kopieren";
btn.style.float = "right";
btn.style.margin = "4px";
btn.style.padding = "4px 8px";
btn.style.fontSize = "12px";
btn.style.cursor = "pointer";
btn.onclick = function () {
copyText(block.innerText, btn);
};
block.parentNode.insertBefore(btn, block);
});
}
addCopyButtons();
mw.hook('wikipage.content').add(addCopyButtons);
});