向 latexlive.com 添加复制按钮,方便快速复制 latex
- // ==UserScript==
- // @name 向 latexlive.com 添加复制按钮
- // @namespace http://tampermonkey.net/
- // @version 0.2
- // @description 向 latexlive.com 添加复制按钮,方便快速复制 latex
- // @author Cesaryuan
- // @match https://*.latexlive.com/*
- // @icon https://www.google.com/s2/favicons?domain=latexlive.com
- // @grant none
- // @license MIT
- // ==/UserScript==
- (function () {
- 'use strict';
- // create a new button
- var btn = document.createElement('button');
- btn.innerHTML = '复制';
- // add class to btn
- btn.className = 'btn btn-light theme-fill';
- // set id
- btn.id = 'copy-btn';
- // add click handler
- btn.onclick = function () {
- // get the selected element
- var selected = document.querySelector('#txta_input');
- // copy the text
- navigator.clipboard.writeText(selected.value);
- toast('复制成功');
- };
- var CONTAINER = "#wrap_immediate > row > div.col-5.col-sm-5.col-md-5.col-lg-5.col-xl-5";
- // wait container appear and add btn
- var interval = setInterval(function () {
- var wrap = document.querySelector(CONTAINER);
- if (wrap) {
- wrap.appendChild(btn);
- clearInterval(interval);
- }
- }, 100);
- function toast(msg) {
- var toast = document.createElement('div');
- toast.className = 'toast';
- toast.innerHTML = msg;
- toast.style.position = 'fixed';
- toast.style.bottom = '10px';
- toast.style.right = '10px';
- toast.style.zIndex = '9999';
- toast.style.backgroundColor = '#fff';
- toast.style.color = '#000';
- toast.style.padding = '10px';
- toast.style.borderRadius = '5px';
- toast.style.boxShadow = '0 0 5px #000';
- toast.style.fontSize = '16px';
- toast.style.fontWeight = 'bold';
- toast.style.opacity = '0';
- toast.style.transition = 'opacity 0.5s';
- document.body.appendChild(toast);
- setTimeout(function () {
- toast.style.opacity = '1';
- }, 100);
- setTimeout(function () {
- toast.style.opacity = '0';
- }, 2000);
- setTimeout(function () {
- toast.remove();
- }, 3000);
- }
- })();