Drag Link to Copy Text

Copy text of any link by simply dragging it.

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         	Drag Link to Copy Text
// @name:zh			拖动链接以复制文本
// @name:fr			Faites glisser le lien pour copier du texte
// @name:de			Ziehen Sie den Link zum Kopieren von Text
// @name:ru			Перетащите ссылку, чтобы скопировать текст
// @name:es			Arrastre el enlace para copiar texto
// @description  	Copy text of any link by simply dragging it.
// @description:zh	只需拖动即可复制任何链接的文本。
// @description:fr	Copiez le texte de n'importe quel lien en le faisant simplement glisser.
// @description:de	Kopieren Sie den Text eines Links, indem Sie ihn einfach ziehen.
// @description:ru	Скопируйте текст любой ссылки, просто перетащив ее.
// @description:es	Copia el texto de cualquier enlace simplemente arrastrándolo.
// @namespace    	iamMG
// @license			MIT
// @version     	1.1
// @icon			https://i.imgur.com/43qD1oK.png
// @match        	http*://*/*
// @author       	iamMG
// @run-at			document-end
// @grant        	GM_setClipboard
// @copyright		2020, iamMG (https://openuserjs.org/users/iamMG)
// ==/UserScript==

(function() {
    'use strict';
	var links = document.getElementsByTagName("a");
	function copier(txt) {
		return function() {
			var temp = document.createElement("textarea");
			document.body.appendChild(temp);
			temp.innerText = txt;
			temp.select();
			if (document.visibilityState == 'visible') document.execCommand('copy');
			temp.parentElement.removeChild(temp);
		}
	}
	for (var i=0; i<links.length; i++ ) {
		var txt = links[i].innerText;
		if (txt) {links[i].addEventListener('dragend', copier(txt), false);}
	}
})();