// ==UserScript== // @name 链接地址洗白白 // @namespace Daomouse Link Cleaner // @version 0.0.11 // @author 稻米鼠 // @description 把链接地址缩减至最短可用状态,并复制到剪切板,以方便分享。【在每个页面的底部中间,有一个小小的按钮,用来呼出面板】 // @icon https://i.v2ex.co/eva0t1TJ.png // @homepage https://dmscode.github.io/Link-cleaner/ // @supportURL https://meta.appinn.com/t/7363 // @match *://*/* // @grant GM_setClipboard // @grant GM_notification // @grant GM_addStyle // @noframes // @downloadURL none // ==/UserScript== /** * 声明:本页面代码未作任何压缩处理 * 但不意味着作者允许任何形式的—— * 借用、抄袭、修改…… * 未经作者允许,仅有权使用,及分享 * 且分享必须在鲜明位置给出本脚本在 * Greasemonkey 中的发布地址 * 作者未授权任何其他网站提供下载! * 开源不等于任君自取,自重!!! */ /** 添加样式 **/ GM_addStyle(` #dms-link-cleaner { width: 100%; position: fixed; left: 0; bottom: 0; z-index: 99999999; pointer-events: none; } #dms-link-cleaner * { pointer-events: auto; } #dms-lc-button { position: relative; margin: 0 auto; width: 24px; height: 12px; color: rgba(0, 0, 0, .3); font-size: 12px; line-height: 10px; cursor: pointer; text-align: center; border: 1px solid #AAA; border-radius: 12px 12px 0 0; background-color: rgba(255, 255, 255, .3); box-shadow: 0 0 5px rgba(0, 0, 0, .1); } #dms-lc-button:hover { color: rgba(0, 0, 0, .8); background-color: rgba(255, 255, 255, 0.8); } #dms-lc-panel { display: none; border-top: 5px solid #65adff; background-color: #FFF; box-shadow: 0 0 5px rgba(0, 0, 0, .1); } #dms-lc-panel > #dms-lc-panel-content { display: flex; justify-content: center; align-items: center; flex: 1 1 none; flex-wrap: wrap; width: 100%; max-width: 800px; margin: 0 auto; padding: 16px 0; text-align: center; position: relative; } #dms-lc-panel > #dms-lc-panel-content > .dms-lc-button { position: relative; padding: 8px 16px; margin: 0 8px 0 0; font-size: 16px; line-height: 1.2em; font-weight: lighter; border: 1px solid #65adff; border-radius: 8px; cursor: pointer; } #dms-lc-panel > #dms-lc-panel-content > .dms-lc-button:hover { border: 1px solid #0062d1; background-color: #0062d1; color: #FFF; font-weight: normal; } #dms-lc-panel > #dms-lc-panel-content > .dms-lc-button:hover::before { content: attr(data-tip); background-color: rgba(0, 0, 0, .9); border-radius:3px; color: #fff; padding: 10px; position: absolute; width: calc(100% + 20px); left: 50%; bottom: calc(100% + 10px); margin-left: calc(-50% - 20px); white-space: pre; } #dms-lc-panel > #dms-lc-panel-content > .dms-lc-button:hover::after { content: ""; position: absolute; width: 0; height: 0; left: calc(50% - 8px); top: -10px; border-top: 8px solid rgba(0, 0, 0, .8); border-right: 8px solid transparent; border-left: 8px solid transparent; } #dms-lc-panel > #dms-lc-panel-content > .dms-lc-hr { width: 100%; margin: 5px 0; } #dms-lc-panel > #dms-lc-panel-content > #dmsCLButtonCoffee { padding: 0; margin: 0; } #dms-lc-panel > #dms-lc-panel-content > #dmsCLButtonCoffee > svg { width: 35px; height: 35px; } #dms-lc-panel > #dms-lc-panel-content > #dms-lc-qrcode { display: none; width: 100%; position: absolute; left: 0; bottom: calc(100% + 24px); padding: 16px; color: #333; font-size: 18px; line-height: 1.2em; border: 1px solid #CCC; border-radius: 12px 12px 0 0; background-color: #FFF; box-shadow: 0 6px 36px 5px rgba(0, 0, 0, .16); } #dms-lc-panel > #dms-lc-panel-content > #dms-lc-qrcode > img { width: 30%; max-width: 180px; } `) /** 添加界面 **/ const dmsLCPopPanel = document.createElement('div') dmsLCPopPanel.id = 'dms-link-cleaner' dmsLCPopPanel.innerHTML = `