1024magnet_magnet

1024 mobile version copy magnet

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

You will need to install an extension such as Tampermonkey to install this script.

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         1024magnet_magnet
// @namespace    http://tampermonkey.net/
// @version      0.7
// @license MI
// @description  1024 mobile version copy magnet 
// @author       You
// @match        *://*/htm_mob/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    document.querySelectorAll('a').forEach(function(anchor) {
    // 检查链接中是否包含指定字符串
    if (anchor.href.indexOf('link.php?hash=') !== -1) {

        // 提取 hash (保持了你原本 +8 的逻辑,如果是纯 'hash=' 其实长度是5,请根据实际情况确认)
        var startIndex = anchor.href.lastIndexOf('hash=') + 8;
        var hash = anchor.href.substr(startIndex, 40);

        // 创建 textarea
        var ss = document.createElement('textarea');
        ss.readOnly = true;

        // 生成磁力链接
        var magnetLink = 'magnet:?xt=urn:btih:' + hash;
        ss.value = magnetLink; // textarea 推荐用 value

        // 修改原链接的 href
        anchor.href = magnetLink;

        // 点击复制功能
        ss.addEventListener('click', function() {
            ss.select();
            document.execCommand('copy');
            // 可选:复制后给个提示,例如 console.log('已复制');
        });

        // 将 textarea 插入到 a 标签后面
        // Element.after() 是现代浏览器支持的原生方法,等同于 jQuery 的 .after()
        anchor.after(ss);
    }
});
    
})();