【油猴脚本】Hypothesis自定义标注颜色和透明度

概述

地址:https://greasyfork.org/zh-CN/scripts/444240
用来自定义Hypothesis的网页标注颜色和透明度。
因为在Hypothesis的pdf标注页面油猴脚本没有权限,故无法自定义pdf标注样式。

使用

点击油猴脚本的图标,点击本脚本下的 “自定义标注颜色和透明度”,在弹出框内自定义颜色以及透明度。
其中,颜色需要是RGB色值,并使用英文逗号分隔;透明度是小数。
Hypothesis自定义标注颜色和透明度

0.1.0源码

// ==UserScript==
// @name         Hypothesis自定义标注颜色和透明度
// @namespace    https://coycs.com/
// @version      0.1.0
// @description  自定义标注颜色和透明度
// @author       coycs
// @match        http://*/*
// @match        https://*/*
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_registerMenuCommand
// @license MIT
// ==/UserScript==

(function () {
  "use strict";

  window.onload = function () {
    let color, transparency;
    color = getValue("H_color");
    transparency = getValue("H_transparency");
    // 设置样式
    setStyle();
    // 注册脚本菜单
    GM_registerMenuCommand("自定义标注颜色和透明度", prompts, "h");
    // 弹出对话框
    function prompts() {
      // 获取自定义值
      let p_color = prompt("请输入RGB颜色值(用英文逗号分隔)", color);
      let p_transparency = prompt("请输入颜色透明度", transparency);
      color=!p_color?color:p_color;
      transparency=!p_transparency?transparency:p_transparency;
      // 保存自定义值
      GM_setValue("H_color", color);
      GM_setValue("H_transparency", transparency);
      setStyle();
    }
    function setStyle() {
      let style = document.createElement("style");
      style.type = "text/css";
      style.innerHTML = `.hypothesis-highlights-always-on .hypothesis-highlight {
      background-color: rgba(${color},${transparency}) !important;
    }`;
      document.getElementsByTagName("head").item(0).appendChild(style);
    }
    // 封装GM_getValue,解决为Null的问题
    function getValue(ag) {
      if (ag == "H_color") {
        return (color = !GM_getValue("H_color") ? "17,153,142" : GM_getValue("H_color"));
      }
      if (ag == "H_transparency") {
        return (transparency = !GM_getValue("H_transparency")
          ? 0.4
          : GM_getValue("H_transparency"));
      }
    }
  };
})();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值