See Through DPlayer

Display the video source link for DPlayer elements which have <video> elements under the hood.

Устаревшая версия за 29.09.2023. Перейдите к последней версии.

// ==UserScript==
// @name         See Through DPlayer
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Display the video source link for DPlayer elements which have <video> elements under the hood.
// @author       firetree
// @match        *://*/*
// @icon         none
// @grant        GM_registerMenuCommand
// @grant        GM.registerMenuCommand
// @license      WTFPL
// ==/UserScript==

(function() {
    'use strict';
    if (!GM_getValue('placeholder')) {
        GM_setValue('placeholder','true')
    }
    function inject() {
        document.querySelectorAll(".dplayer").forEach(el => {
            if (el.classList.contains("see-through-dplayer")) return
            let link = document.createElement("a")
            link.href = el.querySelector("video").src
            link.textContent = link.href
            el.after(link)
            el.classList.add("see-through-dplayer")
        })
    }

    var _GM_registerMenuCommand //脚本管理器菜单命令注册
    if (typeof GM_registerMenuCommand!='undefined') { //脚本管理器有GM_registerMenuCommand
        _GM_registerMenuCommand=GM_registerMenuCommand
    } else if (typeof GM!='undefined' && typeof GM.registerMenuCommand!='undefined') { //脚本管理器有GM.registerMenuCommand
        _GM_registerMenuCommand=GM.registerMenuCommand
    } else { //脚本管理器什么也没有
        _GM_registerMenuCommand=(s,f)=>{};
        console.log('[See Through DPlayer]当前脚本管理器不支持菜单命令,无法手动激活脚本功能。')
    }
    /*感谢Picviewer CE+的作者大佬们,写的脚本随便一段代码都可以帮助我这样的小白*/

    _GM_registerMenuCommand('手动激活脚本功能', inject) //注册菜单命令

    if (GM_getValue('placeholder') == 'true') {
        inject()
    }
})();