« MediaWiki:Common.js » : différence entre les versions
Apparence
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 1 : | Ligne 1 : | ||
document.addEventListener('DOMContentLoaded', function () { | document.addEventListener('DOMContentLoaded', function () { | ||
function fallbackCopyText(text) { | |||
const textarea = document.createElement("textarea"); | |||
textarea.value = text; | |||
textarea.setAttribute("readonly", ""); | |||
textarea.style.position = "absolute"; | |||
textarea.style.left = "-9999px"; | |||
document.body.appendChild(textarea); | |||
textarea.select(); | |||
try { | |||
document.execCommand("copy"); | |||
} catch (err) { | |||
console.error("Échec de la copie fallback :", err); | |||
} | |||
document.body.removeChild(textarea); | |||
} | |||
document.querySelectorAll('.copy-button').forEach(button => { | document.querySelectorAll('.copy-button').forEach(button => { | ||
button.addEventListener('click', function () { | button.addEventListener('click', function () { | ||
const targetId = this.getAttribute('data-copy-target'); | const targetId = this.getAttribute('data-copy-target'); | ||
const target = document.getElementById(targetId); | const target = document.getElementById(targetId); | ||
if (!target) return; | if (!target) return; | ||
const text = target.innerText || target.textContent; | const text = target.innerText || target.textContent; | ||
fallbackCopyText(text); | |||
this.textContent = '✅ Copié'; | |||
setTimeout(() => this.textContent = '📋 Copier', 2000); | |||
}); | }); | ||
}); | }); | ||
}); | }); | ||
Version du 26 août 2025 à 15:47
document.addEventListener('DOMContentLoaded', function () {
function fallbackCopyText(text) {
const textarea = document.createElement("textarea");
textarea.value = text;
textarea.setAttribute("readonly", "");
textarea.style.position = "absolute";
textarea.style.left = "-9999px";
document.body.appendChild(textarea);
textarea.select();
try {
document.execCommand("copy");
} catch (err) {
console.error("Échec de la copie fallback :", err);
}
document.body.removeChild(textarea);
}
document.querySelectorAll('.copy-button').forEach(button => {
button.addEventListener('click', function () {
const targetId = this.getAttribute('data-copy-target');
const target = document.getElementById(targetId);
if (!target) return;
const text = target.innerText || target.textContent;
fallbackCopyText(text);
this.textContent = '✅ Copié';
setTimeout(() => this.textContent = '📋 Copier', 2000);
});
});
});