MyAnimeList anime sayfasına, başlığı tek tıkla kopyalamak için buton ekler.
目前為
// ==UserScript==
// @name MAL Title Copy Button
// @namespace https://greasyfork.org/en/users/1500762-kerimdemirkaynak
// @match https://myanimelist.net/anime/*
// @run-at document-end
// @version 1.0.
// @license MIT
// @description MyAnimeList anime sayfasına, başlığı tek tıkla kopyalamak için buton ekler.
// ==/UserScript==
(function () {
"use strict";
function addCopyButton() {
if (document.querySelector("#mal-copy-title-btn")) return;
const titleElement =
document.querySelector("h1.title-name") ||
document.querySelector("h1.title");
if (!titleElement) return;
const pageTitleContainer =
titleElement.closest(".page-title") || titleElement.parentElement;
if (!pageTitleContainer) return;
const btn = document.createElement("button");
btn.id = "mal-copy-title-btn";
btn.innerText = "📋 Başlığı Kopyala";
btn.style.fontSize = "13px";
btn.style.padding = "4px 10px";
btn.style.marginTop = "8px";
btn.style.marginLeft = "10px";
btn.style.border = "1px solid #3498db";
btn.style.background = "white";
btn.style.borderRadius = "4px";
btn.style.cursor = "pointer";
btn.style.transition = "all 0.2s ease";
btn.addEventListener("mouseover", () => {
btn.style.backgroundColor = "#3498db";
btn.style.color = "white";
});
btn.addEventListener("mouseout", () => {
btn.style.backgroundColor = "white";
btn.style.color = "black";
});
btn.addEventListener("click", () => {
const titleText = titleElement.innerText.trim();
navigator.clipboard.writeText(titleText).then(() => {
btn.innerText = "✅ Kopyalandı!";
setTimeout(() => (btn.innerText = "📋 Başlığı Kopyala"), 1500);
});
});
pageTitleContainer.appendChild(btn);
}
const observer = new MutationObserver(addCopyButton);
observer.observe(document.body, { childList: true, subtree: true });
addCopyButton();
})();